Akka 簡介

Akka是一組開源庫,用于設(shè)計可伸縮的、跨處理器核心和網(wǎng)絡(luò)的彈性系統(tǒng)。Akka允許您專注于滿足業(yè)務(wù)需求,而不是編寫低層代碼來提供可靠的行為、容錯和高性能。

許多常見的實踐和公認的編程模型并沒有解決現(xiàn)代計算機體系結(jié)構(gòu)設(shè)計系統(tǒng)所固有的重要挑戰(zhàn)。為了取得成功,分布式系統(tǒng)必須在組件崩潰而沒有響應(yīng)、消息丟失而沒有任何追蹤線索、網(wǎng)絡(luò)延遲波動的環(huán)境中進行處理。這些問題經(jīng)常發(fā)生在精心管理的數(shù)據(jù)中心內(nèi)部環(huán)境中——在虛擬化架構(gòu)中更是如此。

為了幫助您處理這些實際問題,Akka提供了:

  • 沒有使用諸如原子或鎖之類的低級別并發(fā)結(jié)構(gòu)的多線程行為——甚至不用考慮內(nèi)存可見性問題。
  • 系統(tǒng)及其組件之間的透明遠程通信——免除了編寫和維護困難的網(wǎng)絡(luò)代碼。
  • 集群的、高可用性的體系結(jié)構(gòu)是彈性的、可伸縮的、隨需應(yīng)變的——使您能夠交付真正的反應(yīng)性系統(tǒng)。

Akka對actor模型的使用提供了一種抽象級別,使編寫正確的并發(fā)、并行和分布式系統(tǒng)變得更加容易。actor模型跨越了完整的Akka庫集,為您提供了一致的理解和使用它們的方法。因此,Akka提供了一種深度集成,這是您無法通過選擇庫來解決單個問題并試圖將它們組合在一起來實現(xiàn)的。

通過學(xué)習(xí)Akka和如何使用actor模型,您將獲得大量深入的工具集,這些工具可以在統(tǒng)一的編程模型中解決分布式/并行系統(tǒng)的難題,其中所有內(nèi)容都緊密且高效地結(jié)合在一起。

如何開始

如果這是您第一次使用Akka,我們建議您從運行一個簡單的Hello World項目開始。有關(guān)下載和運行Hello World示例的說明,請參閱quickstart指南。quickstart指南將帶領(lǐng)您通過示例代碼了解如何定義角色系統(tǒng)、角色和消息,以及如何使用測試模塊和日志記錄。在30分鐘內(nèi),您應(yīng)該能夠運行Hello World示例并了解它是如何構(gòu)造的。

這個入門指南提供了下一個層次的信息。它涵蓋了為什么actor模型適合現(xiàn)代分布式系統(tǒng)的需求,并包含了一個教程,將幫助您進一步了解Akka。主題包括:

  • 為什么現(xiàn)代系統(tǒng)需要一個新的編程模型
  • actor模型如何滿足并發(fā)、分布式系統(tǒng)的需求
  • Akka庫和模塊概述
  • 一個構(gòu)建在Hello World示例之上的更復(fù)雜的示例演示了常見的Akka模式。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容