2009-11-04 91 views
5

我正在处理(主要)Perl项目,并希望使用消息队列隔离彼此的进程。我有一个工作流程是这样的:什么是单机最快的Perl IPC /消息队列?

输入 - >接收机 - >处理器(S) - >输出(S)

我需要处理几百个交易/秒,所以我的速度最大的动力。这种设置最快的消息队列系统是什么?

我的所有进程都运行在同一台机器上,所以如果它意味着更好的性能,我可以使用UNIX套接字或临时文件。

到目前为止,我的两个最爱是IPC :: DirQueue和beanstalkd。任何人都有经验,可以得出哪个更快的结论?

还有什么可以使一台机器上的超高速工作队列?

回答

3

我不知道IPC :: Dirqueue或beanstalkd,但我用spread(使用SpreadSpread::Message模块)取得了​​很好的成功。多进程(运行另一个守护进程)和多机很容易。好的是,因为它是基于组的,所以如果你想做记录,统计或调试等事情,而不必改变(或减慢)你的处理器,你可以很容易地连接另一个监听器。

+2

我不禁为此欢呼。在我以前的工作中有几年的快乐用户,甚至从作者身上得到了一些付费的定制支持 - 世界级的。 – 2009-11-04 12:50:28

+0

感谢您的支持。我之前和OP有过类似的任务,我从未遇到过传播。当我有机会时,我会给它一个旋转! – tsee 2009-11-04 13:52:52