我们正在为流量生成器(高性能)设计一个非常基本的UI。当我们直接在shell上运行二进制文件时它工作正常但是当我们通过php脚本执行exec时性能下降。它的速度非常慢。
我们已经搜索过,可能是由于apache环境没有为exec创建一个线程。
有没有办法减少处理时间或通过其他一些服务器端脚本?
谢谢。
答案 0 :(得分:0)
您可以使用exec在后台运行命令。只需在命令末尾添加> /dev/null &
即可。它将在shell中执行该命令并立即返回,而无需等待命令完成。
exec($cmd . " > /dev/null &");
<强>解决方法1 强>
您可以在php.ini
中进行更改,以提高效果。
喜欢将memory_limit
增加到更高的RAM值
<强>溶液2 强>
您正在以webuser(nobody / apache / ww-data)执行该程序,这是一个不太习惯的用户。这就是问题所在。您可以使用sudo将该命令作为更常用的用户/ root执行。试试sudo in php exec()