【问题标题】:Tomcat, service unavailable 503Tomcat,服务不可用 503
【发布时间】:2018-03-09 19:33:09
【问题描述】:

我的 webapp 使用 JSP/JavaScript/google 可视化,并在 64 位 Windows 服务器上的 Tomcat 7 上运行,并有足够的资源专用于此应用程序。它仍在测试中,所以我可以控制负载。

问题是当我在服务器同一网络的设备上工作时,一切正常。但是,当我从不同网络的设备上工作时,请求花费了很长时间(超过 6 分钟),在服务器中的处理正在进行并成功完成时等待 6 分钟后,我收到 Service Unavailable [503] 消息。我检查了 Tomcat 日志,但我找不到任何东西似乎一切正常。我尝试了不同的解决方案,但没有一个适合我:

  • 增加 Tomcat 的连接器超时时间。
  • 增加 Tomcat 内存。
  • 禁用服务器防火墙
  • 尝试不同的浏览器
  • 调整浏览器的请求超时时间。

我通过在 conf/server.xml 中设置 Tomcat 的连接器属性进行了实验。我玩弄了 connectionTimeout 和 keepAliveTimeout 的所有组合和范围。

最终配置为:

 <Connector port="80" protocol="HTTP/1.1"
          address="0.0.0.0"
          connectionTimeout="3600000"
          redirectPort="8443" />

我想知道是否有其他人遇到过这样的问题,以及他们是如何解决的。

【问题讨论】:

    标签: javascript java jsp tomcat google-visualization


    【解决方案1】:

    我认为您 server.xml 的数据有误。将连接器端口从 80 更改为 8080,它始终允许四位数字并且不确定从 8080 开始。请更新如下

    <Connector port="8080" protocol="HTTP/1.1"
          address="0.0.0.0"
          connectionTimeout="3600000"
          redirectPort="8443" />
    

    503 服务不可用

    由于服务器临时过载或维护,服务器当前无法处理请求。这意味着这是一种暂时的情况,经过一段时间的延迟会得到缓解。如果已知,延迟的长度可以在 Retry-After 标头中指示。如果没有给出 Retry-After,客户端应该像处理 500 响应一样处理响应。

    注意:503 状态码的存在并不意味着 服务器在过载时必须使用它。一些服务器可能希望 简单地拒绝连接。click here 了解更多信息 如果您遇到任何问题,请告诉我

    【讨论】:

      猜你喜欢
      • 2015-12-10
      • 2023-04-06
      • 2011-08-04
      • 2015-01-14
      • 2016-07-29
      • 2020-05-26
      • 2019-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多