从外壳程序内部循环调用php getmxrr()时,性能降低

时间:2018-08-13 12:18:29

标签: php bash performance-testing

当我尝试使用php和shell脚本获取gmail的MX达到100000次时,我注意到了巨大的性能差异。

PHP脚本大约需要1.5分钟。

<?php
$time = time();
for($i=1;$i<=100000;$i++)
{
    getmxrr('gmail.com', $hosts, $mxweights);
    unset($hosts, $mxweights);
}
$runtime = time() - $time;
echo "Time Taken : $runtime Sec.";
?>

但是在shell for loop中完成的同一件事几乎慢了10倍

time for i in {1..100000}; do (php -r 'getmxrr("gmail.com", $mxhosts, $mxweight);');done

我很好奇,原因是什么,shell脚本花费了更多的时间来完成完全相同的操作,而php脚本可以非常快地完成该操作。

0 个答案:

没有答案