在EL6.1下,apache / httpd响应比EL5.6(CentOS)慢

我已经阅读了RHEL 6和RHEL 5之间性能差异的其他线索,但没有一个与我的匹配。

我的问题performance为每个请求的平均响应时间(20毫秒)稍慢。 我有大约10个与CentOS 6.1和CentOS 5.6相同硬件规格的服务器。 这个问题在整个团队中是一致的。

我用Passenger运行Ruby on Rails。

  • Apacheconfiguration是相同的(从相同的SVN回购签出)
  • Ruby和Passenger是相同的版本。
  • 应用程序是相同的,正在服务的交通轮循。
  • mod_worker

服务器状态的一个有趣线索:CentOS 6.1服务器在“阅读请求”状态下有20-40个线程,而CentOS 5.6服务器的数量在1个左右。我正在绘制这个图表,以便我可以看到这个趋势。

我也有很多更新的机器,运行速度更快,运行的是CentOS 6.1。 在响应时间,他们把所有的旧机器都掸掉了,但是我可以看到它们在“读取请求”状态下也有稳定的20-40个线程。 这让我相信如果我能弄清楚是什么阻止了这些请求,我可以缩短他们的反应时间。

我的直觉告诉我,我需要调整一些在sysctl中的networking设置,但我还没有弄明白。

在这方面的一个常见问题是,RHEL6中的内存pipe理是不同的,multithreading应用程序可能会受到影响。 尝试在MALLOC_ARENA_MAX = 1下运行apache,看看它是否有所作为。

野蛮的射击#1:你logging主机名而不是IP地址的机会? 如果两者都是的话? 如果是,其中之一是运行nscd?

狂野的镜头#2:LDAP是否以任何方式参与? ie是Apache或者其他任何以ldap用户身份运行的组件?