2016-05-12 64 views

回答

1

的方法之一是實現阿卡持久性:

默認情況下,持續的演員會自動在啓動和重啓通過重放日誌記錄消息恢復。在恢復過程中發送給持續執行者的新消息不會干擾重放的消息。新消息只有在恢復完成後纔會被持續的主角接收。 http://doc.akka.io/docs/akka/2.4.4/java/lambda-persistence.html#Recovery

您也可以確保您的遠程演員,你將消息發送到的是,產卵行爲來處理遠程請求監事。這樣的工作和失敗是由這些孩子而不是你的主要遠程演員接收器。

+0

持久性行爲者是一個可行的選擇,我認爲沒有什麼不同於使用JMS,儘管akka持久性可能更有效。 答案的第二部分我找不到相關的,因爲我們擔心工作正在流失......設置容錯的整個概念......在正常的同步世界中,如果遠程服務死亡,我只鬆動一個請求......但是akka世界整個隊列被破壞,可能在失敗時在隊列中有數千個請求。 我不明白這是不是在akka內建的東西如何可以信任作爲開發人員編寫彈性軟件的最佳工具 –