尽管读取超时和连接超时,但仍然使用resttemplate卡住了线程

cxfofazt  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(340)

我用的是Spring的 RestTemplate 我使用的http工厂是 HttpComponentsClientHttpRequestFactory .
由于被调用服务器的问题,我在进行http调用时遇到了许多线程阻塞的问题。所以,我配置了读取超时和连接超时 HttpComponentsClientHttpRequestFactory .
这很有帮助,但只在一定程度上,现在我看到,不是所有线程都立即被卡住,而是至少有一些初始数量的线程成功超时,但我注意到,在一个时间点之后,我的线程又被http调用卡住了。
以下是我的问题:
既然我同时有读取和连接超时,有没有想过为什么我仍然在基于restemplate的http调用上卡住线程?
我自己的想法是请求在网络中丢失了,我知道这在理论上是可能的,但在我的情况下,这在实践上是可能的吗?
我搜索了一下,发现我可以 sun.net.client.defaultConnectTimeout 以及 sun.net.client.defaultReadTimeout 在jvm级别,因为我已经将超时用于 HttpComponentsClientHttpRequestFactory 会有什么有意义的影响吗?
如果您对我如何解决这个问题有任何其他想法或建议,我们将不胜感激。
代码在虚拟机中,因此我只能这样做:

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题