2017-04-08 85 views
0

我跑的JRuby上的Tomcat的Rails在Windows中,也使用sidekiq運行後臺作業。當我嘗試導入大型CSV文件時,我遇到了可怕的堆錯誤。的JRuby on Rails的不拾取Java堆參數正確

所以我試着設置JAVA_OPTS

集JAVA_OPTS = -Xmx8192m -Xms8192m -Xmn4096m

和我開始堆錯誤不一致。

試過_JAVA_OPTIONS

組_JAVA_OPTIONS = -Xmx8192m -Xms8192m -Xmn4096m

並拿起新的堆值;問題解決了。

在此之後我試圖運行

的java -XX:+ PrintFlagsFinal -version | grep的HEAPSIZE

$ java -XX:+PrintFlagsFinal -version | grep HeapSize 
    uintx ErgoHeapSizeLimit       = 0    {product} 

    uintx HeapSizePerGCThread      = 87241520  {product} 

    uintx InitialHeapSize       := 805102400  {product} 

    uintx LargePageHeapSizeThreshold    = 134217728  {product} 

    uintx MaxHeapSize        := 4292870144  {product} 

java version "1.7.0_79" 
Java(TM) SE Runtime Environment (build 1.7.0_79-b15) 
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode) 

爲什麼MaxHeapSize值比最初更大時,我都設置爲一樣的嗎?

回答

0

它應該被設置_JAVA_OPTIONS = -Xmx8192m -Xms8192m -Xmn4096m代替

組_JAVA_OPTIONS = -Xmx8192m -Xms8192m -Xmn4096m

應該沒有在等號的任何一邊都沒有空格。