我们有一个VPS(2GB RAM / 2个vCPU)。 这是在PHP 5.6,Centos 6,Apache 2.2上的phpBB论坛。 不过有时候这个论坛的响应速度很慢。 使用Chromenetworking浏览器,我发现TTFB有时会长达30秒。 奇怪的是,caching项目也有这个问题。 (见截图)
我已经尝试过了:
我ping服务器:大约10ms
安装zend opcache(99.9%的点击率)
我安装了mytop,看看MySQL是否是问题,但据我了解,MySQL并没有太多的工作
(0/0)00/00/00 / 00关键效率:99.4%Bpsinput/输出:4.4k / 51.1k现在进出:48.4 / 7.5k
由于情况并非总是如此,复制这个问题的唯一方法就是发送F5垃圾邮件,尽pipe我不确定是否真的在复制这个问题。 我可以在较小的扩展(2s ttfb)复制这与在html中复制相同的页面(删除dynamic部分)。
http://s21.postimg.org/ql6eywn3b/ttfb.png
我保持活跃(最大100秒,15秒),maxclients 30.我从哪里去?
我从哪里出发?
剖析。 有各种PHP分析工具。 我喜欢blackfire.io – 它可以很容易地找出瓶颈,无论是PHP代码,MySQL查询还是两者的组合。 没有分析,你是在黑暗中随机尝试的东西。
而不是F5ing,你也可以使用ab,yandex坦克,Siege等工具进行一些负载testing。
validation这个问题的另一件事情是真正的在webpagetest.orgtesting并重复testing多次(高级设置,运行次数)。 或通过他们的API。
这个问题是一个综合问题:
VPS搬到了一个更好的IO,防火墙没有严格设置,问题解决了。 我也禁用了memcached,因为MySQL显然不是瓶颈)