2009-11-04 105 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