我有一台具有 2 个四核处理器(2.4 GHz,16GB RAM)的服务器。我有一些在非常重的负载下运行的 PHP 脚本。这些脚本中的大多数都做一些事情:
- 从数据库中获取数据(只有一行,从一个小表中)
- 从其他服务器(主要是 Facebook)获取数据
- 上传一张小照片
- 更新数据库表(这个表使用量很大,行数增长很快,几乎每秒2行)
问题是,脚本执行时间过长。我以前有一台配置较低的服务器(一个四核处理器,6GB RAM),但脚本需要 4-5 秒才能完成。但是现在,执行时间是 30-40 秒,甚至更多。
我如何衡量执行时间?我microtime()
在脚本开始和脚本结束时测量并减去它们。我只需要一个粗略的估计。
服务器配置:以下是 apache config 中设置的一些参数:
server_limit = 350
max_chlid = 350
keep_alive = off
其他特点: 1. 当服务器不处于重负载时,执行时间非常短 2. 以前的服务器执行时间非常短,即使在重负载下也是如此
我不知道我应该包括哪些其他细节。请问我,我会在这里发布。
我应该怎么做才能改善这一点?
更新:
我发现问题出在 ImageMagick 库上。我用谷歌搜索并尝试了一些解决方案,例如禁用 OpenMP。但这并没有太大帮助