歲月如哥
          人生非夢
          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 歲月如歌 閱讀(1079) 評論(1)  編輯  收藏 所屬分類: java

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

          Java樂園技術交流,http://www.javaly.cn
          2群群號:28840096  回復  更多評論
            
          主站蜘蛛池模板: 永修县| 黄骅市| 铁岭市| 嘉黎县| 会东县| 遂川县| 北川| 辽宁省| 潜江市| 尉犁县| 宁化县| 东山县| 云安县| 渑池县| 灵台县| 沽源县| 景东| 丘北县| 犍为县| 光泽县| 铁力市| 绩溪县| 鄂伦春自治旗| 洪湖市| 石林| 铅山县| 江城| 灵璧县| 兴和县| 全州县| 盐池县| 丰顺县| 嘉荫县| 广元市| 福贡县| 屏东市| 麻阳| 探索| 视频| 宁强县| 南部县|