Tomcat升级后服务器发送“内部错误”响应更快

问题描述 投票:0回答:0

我最近将我们的 Tomcat 服务器从 7.0.85 升级到 9.0.70。我正在使用 Apache 2.4.

我的 Java 应用程序运行在一个集群中,如果 master 节点在执行命令时发生故障,则期望从节点担任 master 角色并完成操作。

我有一个测试开始一个动作,执行故障转移,并确保辅助节点完成动作。

客户端发送请求并循环最多8次以尝试从服务器获得答案。

在升级之前,客户端在前 3/4 次尝试中获得读取超时,然后辅助完成操作,发送 200 响应,测试通过。我可以在 Apache 访问日志中看到服务器在第一次尝试时尝试发送 500(内部错误)响应,但我想这花费的时间太长了,在此之前我收到了读取超时。

升级后,我第一次尝试读取超时,但之后,客户端收到内部错误响应并停止尝试。我可以看到,在第二次尝试时,Apache 的响应比升级前的第一次尝试和其他尝试(2、3、4 次尝试)快得多。

我可以在 tcpdump 中看到,在第一次尝试(升级前后)中,Apache 和 Tomcat 之间的连接达到超时。在以下尝试中,Tomcat 向 Apache 发送重置连接。不同的是,升级后Tomcat在请求后立即发送reset connection,而在升级前,需要几秒钟才能发送。

我的套接字超时是 20 秒,AJP 超时是 10 秒(和升级前一样)。我使用与升级前相同的配置文件(除了由于 Tomcat 更改而不得不进行的一些重构更改)。我尝试将 AJP 超时更改为 20 秒,但没有帮助

这是配置问题吗?有没有办法“撤消”此更改?

apache tomcat tomcat9 apache2.4
© www.soinside.com 2019 - 2024. All rights reserved.