【发布时间】:2012-10-04 09:51:17
【问题描述】:
我在 RHEL5 上使用带有 mod jk 1.2.28 的 httpd。 在 httpd 之后,我确实运行了 tomcat。从 httpd 到 tomcat 的连接是通过 ajp 连接器使用 modjk 进行的。 我只是在负载测试 httpd - 使用 JMeter,当我在 120 秒内同时从两个不同的 JVM 创建 2000 个用户时,httpd 内存使用率很高,当所有连接都缓慢释放时,httpd 内存释放非常慢。有时我确实需要重新启动 httpd 进程。当我重新启动 httpd 时,内存使用量立即下降。 在不重新启动 httpd 进程的情况下,我应该怎么做才能加快 httpd 内存释放? 在 workers.properties 和 httpd.conf 中是否有任何属性可以实现这一点?
请提供一些帮助。
提前致谢:)
【问题讨论】:
-
为什么需要重启httpd进程?如果不这样做会怎样?
-
有时会发生,该请求不会转发到应用服务器。这需要重新启动 httpd。
-
啊,那么您对实际问题进行了任何故障排除吗?日志中有什么东西吗?你能在测试条件下复制这个问题吗?如果有,是什么条件触发的?
-
当我确实增加了 web 服务器上的负载时,比如两台机器在 120 秒内有 2000 个用户,httpd 的内存使用率很高(如预期的那样),但是当连接被释放时(netstat 显示0 在端口 8009 上建立了 tcp 连接),内存释放非常缓慢。有时也观察到,httpd 没有响应,我们必须重新启动 httpd,它会立即释放内存
-
你可以选择一期或另一期吗?很难同时谈论两件不同的事情。我们可以研究记忆,也可以研究无反应,但除非你有任何理由认为它们是相关的,否则试图同时谈论两者会让每个人都感到困惑。为什么不专注于真正给您带来问题的那个?
标签: apache httpd.conf mod-jk worker