PHP线程池?

emb*_*ded 6 php concurrency multithreading

我已安排CRON作业每4小时运行一次,需要收集用户帐户信息.现在,我希望加快速度并在多个进程之间拆分工作,并使用一个进程使用从其他进程检索到的数据来更新MySQL数据库.

在JAVA中我知道有一个线程池,我可以专门用一些线程来完成一些工作.

我怎么用PHP做到这一点?

欢迎任何建议.

谢谢

Rob*_*loi 6

PHP可能不是最适合多线程的语言.

您可能希望了解不同的解决方案.例如,Thrift允许您使用Java后端与Java后端进行通信,您可以在其中轻松实现所需的行为.

如果您仍想在PHP中执行此操作,您可能需要查看:

http://www.php.net/pcntl

http://www.electrictoolbox.com/article/php/process-forking/


sym*_*ean 1

正如其他人所说,分叉进程比使用 PHP 生成线程更容易。但为什么您认为使用单个专用线程将结果写回数据库是一个好主意?尽管使用线程而不是进程来实现这一点稍微简单一些,但它仍然是一个复杂的开销,似乎并没有为总体目标增加任何价值。

事实上,从 cron 启动脚本的多个实例(使用一些参数来分区数据)比在 PHP 代码中启动 fork 要简单得多,并且不用担心将数据记录回数据库的任何瓶颈。

C。