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

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

          Java樂園技術交流,http://www.javaly.cn
          2群群號:28840096  回復  更多評論
            
          主站蜘蛛池模板: 棋牌| 郸城县| 双牌县| 黔西县| 巩义市| 邢台县| 维西| 盱眙县| 阜城县| 松溪县| 黄石市| 泸溪县| 白朗县| 新营市| 城市| 时尚| 西贡区| 溆浦县| 西吉县| 紫阳县| 余庆县| 仙游县| 沙田区| 濮阳市| 长子县| 阜康市| 龙里县| 婺源县| 延川县| 平邑县| 和田市| 金坛市| 龙州县| 巴林右旗| 望都县| 抚远县| 连云港市| 红原县| 房产| 伽师县| 改则县|