2010-01-14 146 views
3

我具有分佈式視頻分析系統,該系統由以下組成:消息傳遞和在分佈式系統中的信令

1. feature extraction: generated lots of features(20+) from each frame of the video 
2. multiple detectors(in different machine): 
    * Each of them will get a subset of feature 
    * Each of them needs the features from multiple frames. 
    * Eg. Detector 1 needs feature 1-5 from 3 frames to start processing; Detector 2 needs feature 2-8 from 8 frames to start processing 

我的問題是:如何做特徵提取塊和多個檢測器之間的通信,優選在實-時間?我一直在尋找一個事件總線,但只有一個過程,Hadoop中的ZooKeeper會是一個更好的解決方案嗎?

我正在使用Java。歡迎任何建議。

+0

功能中有多少數據?像每個功能8個字節?如果您的數據非常少,則可以執行許多簡單的操作,例如將所有功能廣播到所有檢測器。 – 2010-01-15 19:00:21

回答

3

在Java中,您可以考慮使用RabbitMQ消息總線。有一個圖書館Java bindings

的RabbitMQ是基於經過驗證的 平臺,可提供極高的 的可靠性,可用性和良好的吞吐量 和延遲性能是 可預見的和一致的沿 的可擴展性。它有一個小巧,易於維護的代碼庫 ,允許快速定製和部署熱點 。有廣泛的 設施管理,監測, 控制和調試,它是 支持全系列的 商業支持服務和 活躍社區開發包 擴展核心系統。

+0

謝謝jldupont,它似乎許可證不適合公司使用... – Lily 2010-01-15 04:05:48

+1

許可證是Mozilla公共許可證,是嗎?如果是這樣,它應該是公司使用許可的許可證。 – 2010-01-15 18:58:04

+0

兔子的事件並不真實。它不像大多數人所期望的那樣高度可用 - 隊列分佈在多臺機器上,以承受節點故障。其集羣設計用於在重負載下提高*速度,但不會使其更具可用性。 – drewr 2010-09-02 16:15:08