AKKA(一)認知AKKA,認知akka
Akka 是一個用 Scala 編寫的庫,用於簡化編寫容錯的、高可伸縮性的 Java 和 Scala 的 Actor 模型應用。它已經成功運用在電信行業。系統幾乎不會宕機(高可用性 99.9999999 % 一年只有 31 ms 宕機)。
Actor模型並非什麼新鮮事物,它由Carl Hewitt於上世紀70年代早期提出,目的是為了解決分布式編程中一系列的編程問題。其特點如下:
系統中的所有事物都可以扮演一個Actor
Actor之間完全獨立
在收到消息時Actor所采取的所有動作都是並行的,在一個方法中的動作沒有明確的順序
Actor由標識和當前行為描述
Actor可能被分成原始(primitive)和非原始(non primitive)類別
非原始Actor有
由一個郵件地址表示的標識
當前行為由一組知識(acquaintances)(實例變量或本地狀態)和定義Actor在收到消息時將采取的動作組成
消息傳遞是非阻塞和異步的,其機制是郵件隊列(mail-queue)
所有消息發送都是並行的