多工程运行于同一个tomcat下问题

1 生产环境将多工程部署到tomcat下的方法

     1):将项目文件都存在tomcat的webapps目录下,如图

              

     2)在server.xml中添加配置,注意项目的source属性一定要是相对路径 source="/vpbg"

            

     3)通过http://localhost/vpfghttp://localhost/vpbg...访问即可

2 内存溢出的问题

     问题描述:当多个工程加到tomcat,比如,vpfg,vpbg,vpt,同时运行时,tomcat会不稳定,报 java.lang.OutOfMemoryError: PermGen space异常

     Root Cause:
         java.lang.OutOfMemoryError: PermGen space异常.
         PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中。
         我们的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。
     解决办法设置MaxPermSize大小

     设置参数:-Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=512m

         1):开发环境设置于Eclipse

         2):生产环境设置:修改TOMCAT_HOME/bin/catalina.bat 在文件头部注释后加入 SET JAVA_OPTS='-Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=512m'

      3):如果tomcat是注册成了windows服务,以services方式启动的,则需要修改注册表中的相关键值

              打开注册表,找到目录 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\tomcat7\Parameters\Java

              可以看到JvmMs和JvmMx项,其中JvmMs设置最小的内存使用参数,可设置为512;JvmMx设置最大的内存使用参数,可设置为2048

              添加PermSize的最大最小值设置,在options中添加数值,如图

                




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章