我在php中有一个XML解析器,它读取XML文件并将内容插入数据库。这适用于单个文件。但我有数百个文件,每天还会增加数百个。
答案 0 :(得分:2)
您可以使用pcntl_fork()
,这是“经典”的UNIX fork()
方法。请注意,这仅适用于UNIX / Linux系统和CGI / CLI SAPI。
AFAIK在PHP中没有vfork()
,因此它的内存效率不高。
PHP中没有线程。缺乏适当的多处理可能是该语言的最大障碍。
I wrote a little guide使用pcntl_fork()
前一段时间,如果您愿意,可以将其作为起点。还有更多,使用谷歌。
或者,您可以在后台多次启动脚本...根据您的脚本,这可能会更容易......
答案 1 :(得分:0)
http://www.php.net/manual/en/ref.pcntl.php - 评论中有很多例子
答案 2 :(得分:0)
你可以使用php gearman进行多任务处理它提供了一个分布式应用程序框架,可以与多台机器或进程一起工作吗?它允许应用程序并行完成任务,负载均衡处理以及在语言之间调用函数。该框架可用于各种应用程序。 Gearman是多线程的,并且已知能够每秒执行5万个作业。 只需访问http://gearman.org/download