AKKA文檔(java版)——什麼是AKKA?
可擴展的實時事務處理
我們相信編寫並發、容錯、可擴展的應用相當的困難。蓋因大多數時候我們一直在使用錯誤的工具和錯誤的抽象等級。AKKA就是為了改變這一切的。我們利用角色模型提升了抽象等級,並且提供了一個用來構建可擴展的、彈性的以及響應式應用的更好的平台——更多信息請見Reactive Manifesto。對於容錯機製我們采用“讓它崩潰”模型,這一模型已在電信行業取得了巨大的成功,旨在構建自我修複與永不停機的係統。角色還提供了透明的分布式抽象以及真正的可擴展且容錯應用的基礎。
AKKA是開源的,並遵守Apache2許可。
請注意所有代碼樣例的編譯,因此如果你想直接訪問這些源碼,可以去github上訪問AKKA文檔子項目:Java和Scala。
AKKA實現了一個獨特的混合
角色
角色給你提供了:
- 並發與並行性的高等級抽象
- 異步、無鎖以及高性能的事件驅動編程模型
- 非常輕量級的事件驅動流程(1GB堆內存可容納幾百萬的角色)
容錯
- 擁有“讓它崩潰”語義的管理層級
- 管理層級可跨越多個JVM,實現真正的容錯係統
- 非常適合編寫可自我修複且永不停機的高容錯能力的係統
位置透明
AKKA的一切旨在分布式環境中工作:角色之間都使用純消息交互,而且一切都是異步的。
持久化
啟動或重啟角色時,可以選擇持久化或重放它接收到的消息。在JVM崩潰或角色遷移到另一節點時,這一點可以使角色恢複它的狀態。
Scala和Java API
AKKA有兩種使用方式
- 作為一個庫:將它放到WEB-INF/lib下麵供一個web應用使用,或把它當作一個常規的JAR放到你的類路徑裏。
- 微內核方式:將你的應用放到獨立的內核裏。
更多信息參考用例與部署場景。
商業支持
AKKA由Typesafe Inc.按照包含開發與生產支持的商業許可證開發,更多內容請讀這裏。
譯者注:本人正在翻譯AKKA官網文檔,本篇是文檔第一章,歡迎有興趣的同學加入一起翻譯。更多內容請讀這裏:https://tower.im/projects/ac49db18a6a24ae4b340a5fa22d930dc/todos/640e53d6e8c149ab95c47cd333b91073/
最後更新:2017-05-23 17:02:56