最近比较烦躁,系统频繁出现宕机,weblogic控制台打印出如下内容:
# Afatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x0000003373c89afc,pid=21500, tid=139781136643840
#
# JREversion: 6.0_45-b06
# JavaVM: Java HotSpot(TM) 64-Bit Server VM (20.45-b01 mixed mode linux-amd64compressed oops)
#Problematic frame:
# C [libc.so.6+0x89afc] unsigned long+0x2dc
#
# Anerror report file with more information is saved as:
#/webhome/bea/user_projects/domains/crm_domain/hs_err_pid21500.log
#
# If youwould like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
# Thecrash happened outside the Java Virtual Machine in native code.
# Seeproblematic frame for where to report the bug.
#
/webhome/bea/user_projects/domains/crm_domain/bin/startWebLogic.sh:line 180: 21500 Aborted (core dumped) ${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS}-Dweblogic.Name=${SERVER_NAME}-Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS}${PROXY_SETTINGS} ${SERVER_CLASS}
从控制台日志中,可以看到一个宕机错误报告文件,hs_error_pid****.log文件,打出crash报告。
错误内容如下,连续几天查询问题原因,系统如何优化都还出现crash原因。
最后得知这样可以解决,这个分享出来给大家,使同行们少走弯路,可以节省更多时间,知识共享。
出现此问题原因:
1.当前正在使用jar或者class文件被动态更新;
2.当前jar大于4G并且为JDK6或者更早版本;JDK6或者更早版本只能接受4G大小以下的版本。
问题解决:
1.在JDK的1.6.23以上版本中有一个属性,可以避免此问题发生crash.配置动态读取jar或者class
在weblogic的的启动脚本里面,JVM设置地址加入一个参数即可解决此问题。
-Dsun.zip.disableMemoryMapping=true;
试过了,非常有用。还请同行们以后保持良好的系统上线习惯,先停weblogic,再修改类文件,再重启weblogic。或者改成热部署方式也可
原文:https://blog.csdn.net/wpplvhq/article/details/46993083
版权声明:本文为博主原创文章,转载请附上博文链接!