2

我是新來的事件處理域。我正在尋找一個基於Java的事件處理框架來滿足我的需求。我已經通過Myriad框架上的文檔和教程迷宮--Apache Storm,apache Kafka以及RabbitMQ等傳統事件代理。我不聰明。事件處理框架建議

我的要求如下。我有推送給我的事件源(例如使用情況跟蹤)。我想和他們一起做以下事情:

  1. 桶裝(把它們分成不同的桶例如通過客戶)
  2. 插入所有時段的事件批次到數據庫中。
  3. 執行某種負載平衡/事件優先級排序,例如,不希望低優先級的客戶推動巨大的數量。一些事件使高優先級客戶捱餓。

我不在乎事件順序太多,但我想確保高可用性這些系統。

尋找一些啓動的指針。技術基礎設施沒有問題,但基於Java的東西。

回答

3

有做實時分佈式數據處理好的框架:

你的情況,我認爲選擇其中的一個框架是l艾克拿一把大錘打破一個堅果。除了Kafka集羣之外,還必須部署和管理具有主節點和從節點的集羣。

爲了保持您的架構簡單,可擴展且高度可用,您應該看看KafkaStreams。 KafkaStreams是一個新的Java API(自kafka 0.10以來可用),用於對kafka主題進行實時計算。

KafkaStreams應用程序是一個簡單的Java應用程序,因此您可以將作業嵌入到現有的應用程序中。

此外,可以使用一個簡單的命令來部署Kafka Streams作業:java -jar。