Java偶尔会出现SSLHandshakeException

时间:2012-03-28 16:04:06

标签: java ssl-certificate

我通过HTTP基本身份验证连接到具有已颁发证书和身份验证的REST服务。连接过程工作正常,我提交请求(最多几秒),工作正常。但是,每收到一万个请求,我都会收到javax.net.ssl.SSLHandshakeException消息Received fatal alert: handshake_failure。正常/成功请求的响应时间<100 ms,但这些例外之前的延迟时间最长为30秒。

我对这些内容知之甚少,但我想假设Exception是由于网络问题/拥塞或接收端出现问题,而不是代表我的认证/身份验证问题,因为~99.999%的请求成功了吗?这个假设是否合理,或者有人可以解释可能导致这种情况发生的原因?感谢。

1 个答案:

答案 0 :(得分:0)

您确定您的网络没有生成树协议重新计算的问题吗?从高级描述中,STP问题可以创建相同的“网络输出,但等待它再次”定期故障。

如果是STP问题,关闭STP是错误的解决方案。您需要确定什么是错误处理STP流量,并重新配置该设备以“打开”STP或替换它(如果它实际上错误处理STP)。

如果黑暗中的这种刺伤无法让你感到满意,那就需要对网络进行真正的分析。阅读路由器/交换机日志(假设您有可用的设备),并且可能构建一个带有两个NIC卡的Wireshark诊断计算机,以便您可以在特定的线路链接上“连接”监听设备。 Wireshark也可以在无线网络上工作,因为这是一个网络问题,你可能会在不同的网络上找到答案。

当我的一个交换机(和旧的linksys)没有正确处理STP时,我有两个设备建立一个即兴无线网桥(创建一个路由圈)的时间。如果没有Wireshark的帮助,我会有更难的时间搞清楚(并且很多人都在阅读我看到的协议,以确定它们是否“正常工作”)。