httpclient报错 The host did not accept the connection within timeout of
我遇到的这个问题是服务器现网日志中的,不是每次请求都报这个错。是否跟并发有关?
错误堆栈我贴在了下面。
我自己在本地模拟了一些异常情况:
因为是用的httpclient 3.1 ,我在本地自己写了测试类。
网上我查了下,说是设置的setConnectionTimeout()方法,指定连接超时时间。我不知道这个错误怎么出现了的。
我模拟了请求一个不存在的url,他报错是java.net.UnknownHostException: www.gofufu.com
我又模拟了一个存在但不能访问的url,就报我遇到的这个错。比如我访问www.facebook.com
我再模拟一个请求,这个请求在服务端睡眠1分钟,设置setSoTimeout(3000),报Read time out.
谁能解酒我
org.apache.commons.httpclient.ConnectTimeoutException: The host did not accept the connection within timeout of 15000 ms at org.apache.commons.httpclient.protocol.ReflectionSocketFactory.createSocket(ReflectionSocketFactory.java:155) at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:125) at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707) at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
网断了
换成一个不存在的IP确实重现了,感谢! 不过,我们的请求地址是双机,没有宕机的记录。这个请求为什么失败呢?
回复
客户端出现这个问题,可能是你的负载均衡不那么可靠。。。。
你用IP试试,不用域名。。。