I'll be back!

            Focus on BPM, celebrate PegaRULES Process Commander (PRPC)
          posts - 76, comments - 161, trackbacks - 0, articles - 2
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          日歷

          <2013年4月>
          31123456
          78910111213
          14151617181920
          21222324252627
          2829301234
          567891011

          公告

          PegaRULES Process Commander Pega Lead System
          Architect
          PegaRULES Process Commander Pega Senior System
          Architect
          PegaRULES Process Commander Pega System Architect
          Sun Certified Java Programmer Sun Certified Java
          Programmer
          Cognizant Certified PRPC System Architect V4.2 Cognizant Certified
          Pega System Architect
          V4.2, CoreJava
          Macromedia Certified Web Designer Macromedia Certified
          Web Designer
          Email:
          shzolly@gmail.com

          友情鏈接

          搜索

          •  

          最新評論

          內存溢出以及增大 JVM 虛擬內存

          Posted on 2009-03-13 11:37 zolly 閱讀(3351) 評論(1)  編輯  收藏
          1、Eclipse 使用tomcat調試的時候需要增大Jvm內存
          -Dcatalina.base="E:\Workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0" 
          -Dcatalina.home
          ="E:\Java\jakarta-tomcat-5.5.9"  -Djava.endorsed.dirs="E:\Java\jakarta-tomcat-5.5.9\common\endorsed" -Xms256m -Xmx512m 
                  JVM 配置可以參考:http://www.ja-sig.org/wiki/display/UPC/JVM+Configurations.
                  以下部分參考:http://www.sdblog.cn/user1/6720/archives/2008/34039.html.

          2、當程序部署之后,可能也會存在內存溢出的情況
                  a. java.lang.OutOfMemoryError: Java heap space
                  Heap size 設置
                  JVM堆的設置是指java程序運行過程中JVM可以調配使用的內存空間的設置.JVM在啟動的時候會自動設置Heap size的值,其初始空間(即-Xms)是物理內存的1/64,最大空間(-Xmx)是物理內存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等選項進行設置。Heap size 的大小是Young Generation 和Tenured Generaion 之和。 提示:在JVM中如果98%的時間是用于GC且可用的Heap size 不足2%的時候將拋出此異常信息。 提示:Heap Size 最大不要超過可用物理內存的80%,一般的要將-Xms和-Xmx選項設置為相同,而-Xmn為1/4的-Xmx值.
                  解決方法:手動設置Heap size
                  修改TOMCAT_HOME/bin/catalina.sh
                  在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:
          JAVA_OPTS="-server -Xms800m -Xmx800m -XX:MaxNewSize=256m"   

                  PermSize 設置
                  b.java.lang.OutOfMemoryError: PermGen space
          PermGen space的全稱是Permanent Generation space,是指內存的永久保存區域,這塊內存主要是被JVM存放Class和信息的,Class在被Loader時就會被放到PermGen space中,它和存放類實例(Instance)的Heap區域不同,GC(Garbage Collection)不會在主程序運行期對PermGen space進行清理,所以如果你的應用中有很多CLASS的話,就很可能出現PermGen space錯誤,這種錯誤常見在web服務器對JSP進行pre compile的時候。如果你的WEB APP下都用了大量的第三方jar, 其大小超過了jvm默認的大小(4M)那么就會產生此錯誤信息了。
                  解決方法:手動設置MaxPermSize
                  修改TOMCAT_HOME/bin/catalina.sh
                  在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:
          JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m
                  建議:將相同的第三方jar文件移置到tomcat/shared/lib目錄下,這樣可以達到減少jar 文檔重復占用內存的目的。

          3、在tomcat中redeploy時出現outofmemory的錯誤.  可以有以下幾個方面的原因: 
                  1>.  使用了proxool,因為proxool內部包含了一個老版本的cglib.
                  2>.  log4j,最好不用,只用common-logging。
                  3>.  老版本的cglib,快點更新到最新版。
                  4>.  更新到最新的hibernate3.2

          摘自:夢凡的家
          http://blog.csdn.net/mengfanpp/archive/2007/12/03/1912971.aspx

          評論

          # re: 內存溢出以及增大 JVM 虛擬內存  回復  更多評論   

          2013-04-22 15:12 by 賀建妮
          得到的

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 玉环县| 通化县| 保康县| 株洲县| 迁西县| 大宁县| 平远县| 通化市| 榕江县| 大洼县| 敦煌市| 堆龙德庆县| 桑植县| 正安县| 友谊县| 莒南县| 咸丰县| 天等县| 临夏县| 安阳县| 南召县| 保定市| 大连市| 巩留县| 西丰县| 永寿县| 樟树市| 兴城市| 雅江县| 东宁县| 商河县| 密山市| 什邡市| 鞍山市| 镇平县| 武胜县| 微博| 开化县| 德州市| 文山县| 临洮县|