我有一个Perl脚本,已经(截至目前)10个潜艇并且正在增长..
每个子进行不同的LWP调用,并使用我在第一个子集中设置的变量。
由于每个子需要一些时间,我正在寻找一种智能方法来使脚本运行得更快。
你会推荐什么?
我应该:
提前致谢!
修改: 该脚本从Web获取一些xml和soap数据,然后提取必要的部分。
答案 0 :(得分:0)
我使用Coro已经成功,并且已经有一个模块可以执行LWP请求。
http://metacpan.org/pod/LWP::Protocol::Coro::http
Coro是合作惯例,因此不是多线程的。还有一个AnyEvent变种
答案 1 :(得分:0)
您可能需要查看LWP::Parallel模块。
ParallelUserAgent是现有libwww模块的扩展。它 允许您获取URL列表(它目前支持HTTP,FTP, 和文件网址。 HTTPS也可以工作)并连接到所有 in 并行,然后等待结果进来。
答案 2 :(得分:0)
如果你不想,你不必拆分文件。只需要在STDIN上运行一系列事物,然后多次执行你的脚本将每个进程放在后台或者使用cron(如果它正在进行中)。
我建议您使用操作系统的流程,直到您有充分的理由不再这样做。