开发者社区> 问答> 正文

如何设置Servlet才能不自动超时?

简单的描述,有这样一个需求:在某一种类型的请求的时候会再doPost中阻塞,等到一个外部条件满足的时候返回响应数据给客户端。但是,目前客户端中在请求后一段时间会收到服务器的返回:

<html><body><h1>504 Gateway Time-out</h1>
The server didn't respond in time.
</body></html>

这个应该是Tomcat的返回,并不是程序返回数据,而此时原来的请求还在doPost中阻塞。

我希望解决的问题是不要让服务器给我504的响应,必须等到条件满足时在原来请求的doPost中响应数据给客户端并返回。

展开
收起
落地花开啦 2016-06-03 11:23:49 3347 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    有没有Nginx等反向代理?

    不建议设置过长的超时时间,因为客户端连接时可能通过代理服务器进行连接。建议在超时后重新发起请求。类似于Ajax长轮询。

    2019-07-17 19:26:23
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载