Drupal应用程序加载故障排除

我在Drupal应用程序上收到一些零星的高服务器负载(真的很高,8个内核,平均负载为50)。 负载通常在5-10之间。

Drupal应用程序位于一个单独的Varnish服务器后面,这让大多数匿名用户都看起来很蠢。

Drupal应用程序本身是相当重的(在这方面工作,但我们有更多的直接需求)。 当我们以前遇到这个问题时,匿名用户绕过了Varnih。

我可以看到,在这段时间内,对Nginx的请求(绕过Varnish)的数量正在增加,但我不知道该怎么做。 我也确定这些时期的authentication用户数量没有显着增加。

如何解决这个问题?

命令varnishtop -b将允许您查看绕过Varnish并击中后端的内容。 看看这些请求,如果他们中的任何一个不应该的话,那么修改你的VCL来修复它是一个很好的起点。 否则,它至less会告诉你到达后端的最常见的命中。 基于此,您可以开始做出明智的select,在哪个页面上进行进一步的configuration(例如使用XHProf或NewRelic或AppNeta等工具)。