閱讀323 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Akka文檔(java版)-為什麼選擇Akka

1.2 為什麼選擇Akka?

1.2.1 與同類其它產品相比,Akka平台有什麼過人之處呢?

Akka 提供可伸縮的實時事務處理能力。

Akka在以下方麵提供了一致的運行時和編程模型:

  • 縱向擴展性(並發)
  • 橫向擴展性(遠程調用)
  • 容錯性

由於Akka的高內聚性和連貫的語義,學習和管理就成了一件事。

Akka是一款極具可伸縮性的軟件,它的可伸縮性不僅體現在性能方麵,在控製應用程序的大小方麵也很實用。Akka的內核—akka-actor, 非常小並且很容易植入已有項目中。當你的項目需要異步或沒有衝突的無鎖並發時就可以考慮將akka-actor植入你的程序。

你還可以對akka核進行瘦身,使其隻包含你的程序用到的部分,我們稱這個瘦身後的包為Akka微內核。然後基於它來部署你的Akka應用。隨著cpu核心數的持續攀升,為了得到係統性能方麵的提升akka也成了一個不錯的選擇。因為Akka即使在單機環境下也能提供傑出的性能。Akka還提供了一係列的並發範式,用戶可以根據自己的需求特點選擇最優的方案。

1.2.2 Akka適用於那些場景?

Akka被很多大型組織在不同的領域所采用,如:

· 投資和商業銀行業務

· 零售業

· 社交媒體

· 仿真

· 遊戲和賭博

· 汽車和交通係統

· 醫療衛生

· 數據分析

等等。任何係統隻要是需要高吞吐量或低延遲率的都可以考慮使用Akka。

通過角色(Actor)來管理服務故障(Supervisor),負載管理(回退策略,超時以及進程隔離),以及水平和垂直的伸縮性管理(增加cpu核或增加機器數量)。

下麵的鏈接是Akka的使用者對他們是怎樣使用Akka的一些評論:

http://stackoverflow.com/questions/4493001/good-use-case-for-akka

所有這些都是基於ApacheV2的開源項目。

 

譯者注:本人正在翻譯AKKA官網文檔,本篇是文檔第一章,歡迎有興趣的同學加入一起翻譯。更多內容請讀這裏:https://tower.im/projects/ac49db18a6a24ae4b340a5fa22d930dc/todos/640e53d6e8c149ab95c47cd333b91073/

最後更新:2017-05-23 16:34:09

  上一篇:go  並發工具類(四)兩個線程進行數據交換的Exchanger
  下一篇:go  手把手 | 初學者如何用Chainer為漫畫上色 深度學習幫你逆襲漫畫家(附代碼)