运行并行PHP脚本的最佳方法

时间:2014-12-22 16:59:40

标签: php parallel-processing pthreads pcntl

我想一次运行3个不同的简单脚本,每个脚本都会删除网站内容并返回一个字符串。哪个pcntl,pthreads,后台exec()方法最合适?我最感兴趣的是资源消耗低。

2 个答案:

答案 0 :(得分:0)

一般来说很难回答。

您要优化哪种资源?

无论如何,这里的第一个例子主要回答你的问题:http://php.net/manual/en/function.pcntl-fork.php

<?php
for ($i = 1; $i <= 5; ++$i) {
        $pid = pcntl_fork();

        if (!$pid) {
            sleep(1);
            print "In child $i\n";
            exit($i);
        }
    }

    while (pcntl_waitpid(0, $status) != -1) {
        $status = pcntl_wexitstatus($status);
        echo "Child $status completed\n";
    }
?>

答案 1 :(得分:0)

因为我发现我的主持人没有提供扩展,所以exec方式是唯一可行的方法。然而,pthread似乎是最有效的。