akka es/cqrs_在Akka中实现主从/网格计算模式
akka es/cqrs
主從模式是容錯和并行計算的主要示例。 模式背后的想法是將工作劃分為相同的子任務,然后將其委派給從屬。 這些從屬節點或實例將處理工作任務,并將結果發送回主節點。 然后主節點將編譯從所有從節點接收到的結果。關鍵是從節點僅知道如何處理任務,而不知道輸出會發生什么。主從模式類似于網格計算模式,其中控制節點將工作分配到其他節點。 想法是利用網絡上的節點進行計算。 SETI @ Home是使用此模型的最早的先驅之一。
我建立了一個類似的示例,不同之處在于工作節點在遠程節點上啟動,工作節點向Master(WorkServer)注冊,然后隨后開始處理工作包。 如果沒有在Master(WorkServer)上注冊的工人從屬服務器,則主服務器將等待工人注冊。 工人可以隨時注冊,并從那里開始獲取工作包。
該示例演示了WorkerActor系統如何發送注冊請求。 RegisterRemoteWorker接收該請求,并將其轉發到JobController,在此更新RoundRobinRouter以獲取新的工作程序信息。 WorkScheduler定期向JobController發送請求,JobController然后將數據包發送給所有注冊的工作人員。
對于遠程角色死時如何處理故障或如何重新處理尚未處理的數據包,該示例未實現容錯功能。 同樣,在某些情況下,遠程工作人員可能希望在處理一定數量的數據包后關閉,然后他們可以指示主機停止給他們工作。 我將盡快添加容錯功能!
更新 :更新了代碼庫以處理工作程序關閉。 如果遠程角色死亡或關閉,則JobController使用遠程角色偵聽器檢測到故障轉移,并更新路由器。
本方案的代碼庫可在以下位置- https://github.com/write2munish/Akka-Essentials的GridPatternExample下
參考:在Akka Essentials博客上,來自我們的JCG合作伙伴 Munish K Gupta在Akka中 實現了主從/網格計算模式 。
翻譯自: https://www.javacodegeeks.com/2012/05/implementing-master-slave-grid.html
akka es/cqrs
總結
以上是生活随笔為你收集整理的akka es/cqrs_在Akka中实现主从/网格计算模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 形容一个人优点的词语 形容一个人优点的词
- 下一篇: 智能包装结构,提高可测性