websphere默名奇妙宕机的解决

前一阶段websphere频频出现宕机的事情,做过很多的调整,均未达到效果,前一些天一周竞然出现数次宕机的情况,没有办法忍受了,团队中的每一个人都睡不好觉了,每天得睁着眼睛睡觉,时刻得关注着监控短信。在网上发现了一篇文章。

他碰到情况与我相似。运行环境也一样,aix操作系统,webspere。他说是IPV6和IPV4的问题。以前我发现websphere停机的时候只是通过kill -9 来杀掉websphere,core文件也非常的大,没有办法打开。文章中用kill -3来杀掉websphere.后来才明白这样会产生core文件。我按着他的做法来修改websphere的设置,这几天系统运行挺稳定的。我还得继续关注websphere的运行情况。现在将这篇文章的内容记录下来。

我修改的内容为应用程序服务器 > server1 > 进程定义 > Java 虚拟机 > 定制属性 > 中自定制属性java.net.preferIPv4Stack 值为true.记住,在改变这些属性的时候,最好将websphere中node的server.xml做一个备份,如果配置错了,恢复回server.xml将恢复正常,要不websphere启不了就傻眼了。关注中。

原文

问题

当发现WAS挂起或响应慢的时候,通过 kill -3 产生 javacore 文件,在 javacore 文件中发现大部分的线程堆栈都在执行java.net.InetAddress.getLocalHost,如下:
at java.net.Inet6AddressImpl.getLocalHostName(Native Method)
at java.net.InetAddress.getLocalHost(InetAddress.java:1186)
at org.apache.soap.util.mime.MimeUtils.getUniqueValue(Unknown Source)
at org.apache.soap.rpc.SOAPContext.setRootPart(Unknown Source)
解答

在Java 2 SDK 1.4中,JVM 在获得 HostName 的时候会同时进行 IPv4 和 IPv6 查询。如果Domain Name System (DNS) 服务没有配置接受IPv6查询,JVM可能返回Unknown Host异常,如果Domain Name System (DNS) 服务没有正确配置接受IPv6查询,JVM需要等待IPv6查询返回结果,直到超时。这就引起了JVM挂起或响应慢。
这个问题有以下解决方案:
1.Java解决方案
如果是一般的Java应用程序,可以在启动JVM的时候加入
-Djava.net.preferIPv4Stack=true
参数。
如果是WebSphere Application server,执行如下步骤:
a.登录管理控制台,打开“服务器 > 应用服务器 > 服务名称 > 进程定义 > JVM虚拟机 > 定制属性” 页面。
b.在页面中添加如下定制属性
名称: java.net.preferIPv4Stack
值: true
c.点击“确定”,并保存配置。
d.重新启动应用服务器
2.AIX解决方案
a.安装以下APAR:
AIX V520: IY47908
AIX V510: IY48783
要确认这个补丁是否已经安装,可以用如下命令:
instfix -ik IY#####
b.在确认以上APAR已经安装后,编辑/etc/netsvc.conf文件,在其中加入:
hosts=bind4,local
或者在启动WebSphere Application Server前,设置系统环境变量:
export NSORDER=bind4,local
3.Domain Name System(DNS)解决方案
配置DNS服务器忽略IPv6查询请求
4.Network Information Service (NIS) 解决方案
如果系统使用NIS来解析Hostname,可以通过修改/etc/hosts和/etc/netsvc.conf文件来移除NIS。

2008年5月4号早晨宕机了,依然是没有任何原因。重新启动,将数据补采。此次做的调整为将xml解析用到的几个包如

xalan.jar,xercesImpl.jar,xml-apis.jar三个包拿掉,因为在websphere的lib下面已经有这三个包了。拿掉后又查了好多资料,依然没有找到应的解决办法。此次将以前生成的core和dump文件删掉,关注看以后是否还出类似的信息。

2008年5月9日,以一次宕机,很快将其启动,竞然没有发现任何有意义的线索。看来还得关注,提心吊胆。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值