HTTP获取响应数据超时
环境:
java web工程 管理后台和服务暂时一个项目中,运行容器为tomcat。
服务是基于http的,对外暴露的只有一个统一的接口。接口的处理流程大体如下:
public void deal() { saveOrUpdate(); new Thread(new Runnerable() { //这块就表示异步处理 public void run() { //一些数据同步处理 } }); }
管理后台去调用服务时,有时会出现获取响应数据超时这个异常。通过看日志,就是发现进入deal后,会执行完saveOrUpdate,然后就感觉IO阻塞了,一直等出现超时异常后,异步处理那部分代码才开始执行,感觉一下后台和服务变成了串行。但是我在单元测试中,循环调用n次服务都不会重现该问题。
我们这个项目是分级部署的,当服务和服务之间相互调用时,这个问题也没有。
现在怀疑是因为后台管理和服务部署在一块导致的,但是不知道问题出在哪里,还请有经验的oscer指点迷津。
如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

评论(5)


发布评论
需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。