歲月如哥
          人生非夢
          posts - 50,comments - 144,trackbacks - 0
          %Easerver%/bin目錄下 djc-seten.bat(linux下為.sh),設置

          set DJC_JVM_MAXHEAP=512M
          set DJC_JVM_MINHEAP=256M

          在easerver上碰到了OutOfMemory的問題,參考上面的解決辦法:
          set DJC_JVM_MAXHEAP=512M
          set DJC_JVM_MINHEAP=512M
          啟動easerver6.0之后會發現進程之中有兩個java.exe和一個javaw.exe,如下圖所示:
           
          則發現兩個java.exe進程分配內存都是512M左右,顯然有一些問題,這里怎么會有兩個相同的進程,并且兩個內存分配都是根據上面的配置來的,哪個是我們用的
          從easerver文檔中發現,有另外一個地方可以配置jvm的啟動參數,即web控制臺如下圖所示的java Startup Options:
           
          設置成如下圖所示的啟動參數:
           
          然后重啟easerver,發現內存分配的變化如下:
           
          顯然,兩個java進程,有一個的內存是根據開始的set配置確定的,另外一個是根據我們在控制臺配置。
          我個人理解是:這兩個java進程,一個是easerver自己使用的,一個是我們發布程序使用的。
          如果我們沒有在控制臺設置具體的jvm參數,則發布程序使用的jvm參數默認會和easerver自己使用的相同(即通過set設置的)
          如果在easerver發布過程中碰到OutOfMemory,即發布本身需要很大的內存,比如包很大等等,修改set的那個jvm參數即可。
          如果是我們的應用程序使用過程中OutOfMemory,則需要在控制臺直接設置jvm參數,控制比較精確(例如-server -Xms1024m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=128m)

          另外根據easerver的文檔,好像set DJC_JVM_OPTIONS="-server -Xms1024m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=128m"
          應該也可以的,但是我試了幾次(包括把引號去掉)都沒有成功……

          總結一下:就是一般來說不用修改set的這個jvm啟動參數,使用默認配置即可,只需要根據實際情況到控制臺精確修改一下我們的應用程序使用的jvm參數。
          posted on 2008-11-12 16:58 歲月如歌 閱讀(1072) 評論(1)  編輯  收藏 所屬分類: java

          FeedBack:
          # re: easerver6 jvm設置,解決OutOfMemory問題
          2009-06-23 10:05 | 找個美女做老婆
          easerver6?沒有用過

          Java樂園技術交流,http://www.javaly.cn
          2群群號:28840096  回復  更多評論
            
          主站蜘蛛池模板: 朝阳县| 都兰县| 三门县| 灌南县| 绥滨县| 都江堰市| 车险| 玛曲县| 平和县| 报价| 肃北| 延安市| 昌吉市| 巫溪县| 桦南县| 康马县| 长汀县| 景洪市| 开化县| 西乡县| 射阳县| 武宣县| 松江区| 齐河县| 镇安县| 玛沁县| 运城市| 乌拉特前旗| 定兴县| 陵川县| 山东| 清丰县| 东安县| 贵定县| 宝兴县| 南充市| 定陶县| 瓦房店市| 德惠市| 乌鲁木齐县| 满洲里市|