首页 / JAVA / java – 诊断间歇性连接超时?
java – 诊断间歇性连接超时?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 诊断间歇性连接超时?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2392字,纯文字阅读大概需要4分钟。
内容图文
![java – 诊断间歇性连接超时?](/upload/InfoBanner/zyjiaocheng/792/2ef0d3c0e3f1419684b6886dc05ea623.jpg)
我有一个java客户端,它调用一个线程来访问servlet并从服务器上的日志中检索最后几行,并在客户端上显示检索到的日志行.每隔一段时间,日志线程就会超时.
应用程序服务器是Tomcat,但错误在Tomcat和Websphere上间歇性地可重现,Windows上的客户端和Windows上的服务器.对于AIX上的Windows和服务器上的客户端,此问题直到现在才发生.我必须提到代码在很多次迭代中都是稳定的,并且突然开始出现这些问题.
到目前为止我尝试过的
>日志读取客户端每0.1秒调用一次线程(使用睡眠).我尝试在代码中将睡眠时间增加到5秒,但它没有帮助.
>创建URLConnection对象时,我设置了connectTimeout和readTimeout等属性.我不认为readTimeout可能是一个原因,因为这会抛出一个Socket异常.
3我尝试使用Tomcat配置.
Connector port="9962" protocol="HTTP/1.1" connectionTimeout="200000" redirectPort="8445" acceptCount="30"
4. url连接在使用后“断开连接”.
5堆栈跟踪似乎意味着请求永远不会到达应用程序服务器,这可能是因为连接上的某些操作系统层限制.但在这种情况下,Windows的事件查看器中会有一个条目.
java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.<init>(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
你会如何诊断这个问题?服务器日志不会显示任何可疑内容.据我所知,客户端和服务器没有任何其他网络设备,因此不需要代理,并且防火墙已关闭.
到目前为止我还没有使用过活着.
解决方法:
很难预测导致这种情况的原因.但是,您的下一步应该是尝试在客户端和/或服务器上运行数据包嗅探器,以查看TCP连接请求是否正在进入Windows计算机.
如果Tomcat和Websphere都出现问题,那就意味着原因处于较低的水平;即在OSes TCP / IP堆栈,防火墙……或网络中. (如果服务器在虚拟网络中运行,则可能是虚拟网络中的丢失.)
内容总结
以上是互联网集市为您收集整理的java – 诊断间歇性连接超时?全部内容,希望文章能够帮你解决java – 诊断间歇性连接超时?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。