首页 > 其他 > 详细

bea jrockit的确是个生产应用的好平台

时间:2014-02-07 01:21:58      阅读:377      评论:0      收藏:0      [点我收藏+]

公司有一台linux pc server,配置AMD2800+,内存1G,安装了tomcat5.5+sun jdk6.0,上面跑了10个左右Web应用,例如一些开发管理系统、项目演示等,tomcat已经设置了-Xms256M -Xmx768M -XX:PermSize=64M -XX:MaxPermSize=256M这些虚拟机参数。另外服务器上还有subversion、apache、openldap等服务,但一般过一段时间会tomcat死一下,所以设置了一个每天晚上自动重新启动一下。
近来因为项目紧张,服务器用的人多了,出现内存不足,top显示使用了约500M的swap空间,频繁出现java out of memory,tomcat经常死机,严重影响工作。而且还出现晚上不能重新启动的问题,早上过来服务器不可用,影响一天心情。

上周向公司申请了采购了几根1G的内存,这台服务器只分到一根1G条,且只有两根内存插槽,将就一下,升级到1.5G内存,同时了解到Bea JRockit已经解决了PermSize的问题,决定使用jrockit vm试试,结果出乎我意料的好。

我下载的是jrockit sdk 6.0,在linux上设置JAVA_HOME指向安装目录,并把$JAVA_HOME/bin加到PATH变量,修改catalina.sh,在前面加入:

Java代码  bubuko.com,布布扣
  1. JAVA_OPTS="-server -Xms256M -Xmx576M"


jrockit已经不需要-XX:PermSize这样的参数了。
使用一个星期以来,Tomcat从来没有死过,内存使用一直稳定在565M左右,系统总内存稳定在1480M左右,相当的稳定,而且java应用的速度感觉有很大的提高。

总体来说,我全力推荐在生产应用服务器上使用jrockit vm,它会给你带来意想不到的惊喜。但本地开发我还是选择使用sun java sdk,在我的开发机上,jrockit吃内存相对厉害,而我只有1G的内存。

注:所谓PermSize,是指vm为类描述信息分配的内存空间,随着动态类等技术的广泛应用,这一内存区默认的64M大小已经不能满足需要,而且,sun vm对这部分内存居然无法进行gc,所以需要设置一个比较大的PermSize。但长时间运行后特别是频繁进行JavaEE应用部署的话,仍然会出现out of memory异常。


bea jrockit的确是个生产应用的好平台

原文:http://lucifer119.blog.51cto.com/2914308/1355123

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!