从此问题现象看目前DNS不支持ipv6的域名解析(从此问题现象看不支持)。我们猜测,应用在处理两次dns请求时,有可能先处理到ipv6的响应,从而报错。
解决和总结: 目前SFS采用的解决方案是: 在java启动命令中增加一个属性配置:-Djava.net.preferIPv4Stack=true,即我司was控制台里面增加jvm属性配置,指定ipv4优先解析DNS.
修改的内容为应用程序服务器>server1>进程定义>Java 虚拟机>定制属性> 中自定制属性java.net.preferIPv4Stack 值为true.记住,在改变这些属性的时候,最好将websphere中node的server.xml做一个备份,如果配置错了,恢复回server.xml将恢复正常,要不websphere启不了就傻diao了
JA 解决方案
(1) Tomcat中的设置
检查<Tomcat安装目录>/bin 下的 catalina.bat(Windows平台)或catalina.sh(Linux平台)中的 JA_OPTS参数是否设置了 –Dfile.encoding=GBK,若没有则需要在该文件中加上一行。
Windows平台:set JA_OPTS=%JA_OPTS% –Dfile.encoding=GBK
Linux平台: JA_OPTS="$JA_OPTS –Dfile.encoding=GBK"
“添加:-Djava.net.preferIPv4Stack=true
tomcat 的bin 目录下
linux 系统则修改catalina.sh文件
window 则修改 catalina.bat文件 ”
(2) Weblogic中的设置
应用服务器为Weblogic,要在 Weblogic目录 /user_projects/domains/mydomain下面的 startWebLogic.sh 文件中,JA_HOME = “ ” 下面一行增加:
JA_OPTIONS= "${JA_OPTIONS} -Dfile.encoding=GBK"
然后重启Weblogic即可。
(3) Websphere中的设置
a.登录管理控制台,打开“服务器 > 应用服务器 > 服务名称 > 进程定义 > JVM虚拟机 > 定制属性” 页面。
b.在页面中添加如下定制属性
名称: java.net.preferIPv4Stack
值: true
c.点击“确定”,并保存配置。
d.重新启动应用服务器 WebSphere,JVM参数才会生效
2.AIX操作系统解决方案
a.安装以下APAR:
AIX V520: IY47908
AIX V510: IY48783
要确认这个补丁是否已经安装,可以用如下命令:
instfix -ik IY#####
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。
Slow performance or hang in HostName lookup 2009-12-16
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-30599-39.html
平生
各位不必纠结于十二海里
这不是霸权是什么