我最近不得不迁移由负载平衡器和三个后端组成的基础架构。每个后端都使用apache2进行了设置,以处理HTTP / HTTPs请求并将它们通过AJP协议转发到tomcat服务器。
我不了解的内容出现在apache2中。如果查看服务器状态页面,则会看到一堆workers停留在读取状态,该请求为NULL请求。在达到apache2的Timeout之后,工作进程被杀死,并且没有超时错误(408)发送到客户端,这是有意义的,因为客户端甚至没有发出请求。
这就像是插座没有正确关闭或类似的东西,但我不确定。我们没有在apache2.2上经历过,现在我们正在使用apache2.4。该连接仅在apache中不会出现在tomcat中。
可以通过较低的Timeout值来缓解此问题,但是我想知道这是否是社区中众所周知的,使用简单的解决方案,或者是否有方法正确解决此问题。
配置
:Apache / 2.4.18(Ubuntu)。 mod_jk / 1.2.43。 Tomcat的。 IPVS和Keepalived。谢谢,
保罗。
最近,我不得不迁移由负载均衡器和三个后端组成的基础架构。每个后端均使用apache2进行设置,以处理HTTP / HTTPs请求并通过AJP协议转发它们。...
找到了我的答案。一种方法是使用mod_qos通过要求最低数据速率来拒绝半开连接。