在上面的探针负载中PHP最终仍然出现了out of memory的情况,导致最终nginx对应的PHP网关500错误,等待Apache重启后才自动恢复。于php.ini的内存配置有待调整负载策略后通过配置测试寻找合适值。
调整硬件确认系统提升空间。
上面的数据是在i7 930 2.8GHz+DDR1600三通道下实现的,那么接着我们要做的事情是调整内存和CPU的速度来确定系统在硬件提升下的处理能力提升空间。
首先我们把CPU的频率从21×133修改为166×18,内存速度会提升至1660。在这个速度下我们关闭MySQL日志及Xdebug日志进行数据横向对比。为了提高负载在场景中关闭页面细分功能。
负载时使用nmon在后台监控资源占用情况。
./nmon_x86_64_centos5 –s5 –c150 –f –m /tmp/ |
负载结果:
可以看到增加内存并没有提高系统的处理能力,但是在稳定性上有一定的提升,包括我们获取的页面时间也显示增加了内存后,响应时间的变化趋势更加稳定。
上图选中的是3GB内存的应用层运行时间,相对于2GB内存的系统来说波动更为稳定。
通过cat /proc/cpuinfo命令可以在Centos中查看CPU个数,通过Free命令可以查看内存。
在前面我们知道注册用户端的主要负载是在应用层上,提升CPU的个数应该会提高应用层的处理能力,降低响应时间。