【问题标题】:Tomcat Request cancelled by timeoutTomcat 请求因超时而取消
【发布时间】:2015-04-25 03:13:53
【问题描述】:

我有一个 Web 应用程序,但我遇到了请求超时问题。问题在于请求超时。当我在本地启动我的应用程序时,我的方法需要 30 多秒才能完成它的工作。因此,30 秒后请求将被取消。我在真实服务器中没有这个问题。它真正的服务器这个请求需要 3 秒。我试图在这个片段 <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/> 的 tomcat conf 文件夹中的 server.xml 中增加连接超时,但这并没有解决我的问题

【问题讨论】:

  • 所以您在服务器启动时的作业需要超过 30 秒,并且由于您的作业挂起时间过长,tomcat 正在关闭?
  • 您是否在某些 IDE 或独立的 tomcat 实例中遇到此问题?
  • @Arkantos 服务器启动没有问题。我启动服务器没有任何问题,但是当我调用一个具体方法时,它需要 30 多秒,30 秒后这个请求被取消
  • @Mahendra 是的,我在 Eclipse 中遇到了这个问题
  • 是超过 30 秒的数据库请求还是一些网络服务请求?

标签: java tomcat request timeout


【解决方案1】:

要在 Eclipse 中增加 Tomcat 服务器超时,请转到服务器视图选项卡,然后超时。 如果您的服务器未启动,则指定启动和停止超时限制。

如果服务器运行良好并且特定请求花费了更多时间,请检查您的方法,如果某些 DB 或 Web 服务操作花费的时间超过预期,这可能是延迟并最终导致请求超时的原因。

【讨论】:

  • @Mahenda 该方法在本地机器上需要超过 30 秒,但在真实服务器上需要 3 秒,所以问题不在方法的逻辑上
  • 如果你能告诉我们你在那个方法中到底在做什么,那会更好理解。
  • 我只发出搜索请求(选择)。今天方法在本地工作,它需要不到 30 秒。日志可能有问题吗?如果日志太多
  • 是的,过多的日志记录也可能是问题,它将日志写入文件系统。本地服务器和生产服务器上的日志记录级别相同。
猜你喜欢
  • 2017-03-02
  • 2021-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多