多线程php脚本

多线程php脚本,php,multithreading,curl,cron,pthreads,Php,Multithreading,Curl,Cron,Pthreads,我有一个运行php脚本的cron。 事实上,它需要几个小时甚至超过10个小时才能运行。 这需要花费这么长的时间,因为在脚本中,它会依次获取和处理多个网站页面,每个页面都必须等待上一个页面完成加载/处理,然后才能开始。 我的问题是,有没有办法一次加载和处理多个网站页面以节省时间 现在我有个东西看起来像 <?php //loop for each url link $my_var = file_get_contents($urlLink); //do some processing on $

我有一个运行php脚本的cron。 事实上,它需要几个小时甚至超过10个小时才能运行。 这需要花费这么长的时间,因为在脚本中,它会依次获取和处理多个网站页面,每个页面都必须等待上一个页面完成加载/处理,然后才能开始。 我的问题是,有没有办法一次加载和处理多个网站页面以节省时间

现在我有个东西看起来像

<?php

//loop for each url link
$my_var = file_get_contents($urlLink);
//do some processing on $my_var

?>


您可以查看,但不要混淆它的功能—它是ansync,而不是threaded。获取URI的实际瓶颈在哪里?获取URI,是的。个人不建议使用
pthreads
路线。将列表分成10个部分并运行该脚本的10个部分,或者,重新构造使其更像一个队列,使用一些
curl\u multi
获取作业并将其添加到队列中,分离出处理这些作业的代码。然后,您可以更好地找到一个平衡点。^如果是负数,则您需要保留数据。可能已经有磁盘I/O了。不知道提供了多少代码。可能是我不会纯粹用PHP.Ye做的事情。我可能会像排队一样。现在,我必须找到一个很好的例子,说明有人在堆栈/队列中添加了curl结果,并从中获取它。您可以查看它的功能,但不要混淆它的功能—它是ansync,而不是threaded。获取URI的实际瓶颈在哪里?获取URI,是的。个人不建议使用
pthreads
路线。将列表分成10个部分并运行该脚本的10个部分,或者,重新构造使其更像一个队列,使用一些
curl\u multi
获取作业并将其添加到队列中,分离出处理这些作业的代码。然后,您可以更好地找到一个平衡点。^如果是负数,则您需要保留数据。可能已经有磁盘I/O了。不知道提供了多少代码。可能是我不会纯粹用PHP.Ye做的事情。我可能会像排队一样。现在,我必须找到一个很好的例子,说明有人在堆栈/队列中添加了curl结果,然后从那里开始。