这篇文章主要为大家分析了jvm crash的实例分析的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“jvm crash的实例分析”的知识吧。
创新互联公司专业成都网站建设、成都网站制作,集网站策划、网站设计、网站制作于一体,网站seo、网站优化、网站营销、软文发稿等专业人才根据搜索规律编程设计,让网站在运行后,在搜索中有好的表现,专业设计制作为您带来效益的网站!让网站建设为您创造效益。
半个月来,新的网站服务器运行可靠性急遽下降,主要原因是jvm crash。而引起jvm crash的原因也都与java GC(Garbage Collection)相关。
查了一下sun的文档“Trouble-Shooting and
Diagnostic Guide",总算有了点初步的认识。检查4个jvm 崩溃时的文档(hs_err_pidXXXX),原因完全一致:
An unexpected error has been detected by HotSpot Virtual Machine:
#
# SIGSEGV (0xb) at pc=0x010d2d9e, pid=8089, tid=5417904
#
# Java VM: Java HotSpot(TM) Server VM (1.5.0_07-b03 mixed mode)
# Problematic frame:
# V [libjvm.so+0x3efd9e].......................
再查jboss的文档,初步判断jvm崩溃的原因是permsize不足所致。因为系统大量使用了spring beans,jvm需要较多地使用 Permanent Generation Heap来存储reflective data。
解决方案是:在JAVA_OPTS加上-XX:MaxPermSize=128m,jdk5.0默认的初始值为8Mb(client)/16Mb(server),最大值为64Mb.
现在Perm Generation只是使用了68%,而之前4次jvm崩溃是,该值均为99%.
新服务器的可用性问题是否因此得到解决,还有待观察。
关于“jvm crash的实例分析”就介绍到这了,更多相关内容可以搜索创新互联以前的文章,希望能够帮助大家答疑解惑,请多多支持创新互联网站!