【发布时间】:2012-11-17 00:52:22
【问题描述】:
谁能告诉我为什么exec() 函数在 PHP 中的不同机器上如此缓慢且时间不可预测?
基本上我有一些可执行文件,想通过 PHP 执行它:
$command = '/usr/pathToComman/myCommand -someParameters';
exec($command);
问题是它执行的时间比来自 shell 的相同命令要长得多(我的意思是 3-4 有时像 25 倍)。
除此之外,该命令从我的服务器上的 PHP 执行的时间更长,这更强大(更多 RAM 和更多 GHz)。
所以有两个问题:
- 为什么?
- 我该怎么办?
附:我需要这个执行,因为我不能用 PHP 做同样的事情
P.S.2 回答@prodigitalson 问题:它解决了微分方程,但基本上不管它做什么,速度都会慢得多。我记得用这种方式做一些图像处理,速度也慢了很多。
【问题讨论】:
-
那么在同一台机器上,从 PHP 启动比从 shell 启动需要更长的时间? (也许在问题中包含一些数字。)盒子上有负载吗?也许它从 web 服务器进程中继承了一个不错的值。
-
我相信我已经弄清楚了,请参阅stackoverflow.com/a/48505455/6342916
标签: php performance exec