日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Akka笔记–演员介绍

發布時間:2023/12/3 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Akka笔记–演员介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

過去做過多線程的任何人都不會否認管理多線程應用程序有多么艱辛和痛苦。 我說管理是因為它一開始很簡單,一旦您開始看到性能改進,它就會變得非常有趣。 但是,當您發現沒有一種簡單的方法可以從子任務中的錯誤或難以發現的僵尸錯誤中恢復時,或者當您的探查器顯示您的線程花費大量時間阻塞時,它會感到疼痛在寫入共享狀態之前浪費時間。

我不想談論Java并發API及其集合如何使其變得更好和更容易,因為我確定如果您在這里,您可能需要對子任務進行更多控制,或者僅僅是因為您不喜歡編寫鎖和同步塊,并希望更高層次的抽象。

在本系列的Akka Notes中,我們將通過簡單的Akka示例來探索工具包中的各種功能。

什么是演員?

Akka的演員遵循演員模型 (duh!)。

像演員一樣對待演員。 不親自交談的人。 他們只是通過郵件交談。

讓我們對此進行擴展。

1.消息傳遞

考慮兩個人–一個明智的老師和學生。 學生每天早上都會向老師發送一封郵件,而明智的老師會發回明智的報價。

注意事項:

  • 學生發送郵件。 一旦發送,郵件將無法編輯。 談論自然不變性。
  • 老師在需要時檢查他的郵箱。
  • 教師還會發回郵件(再次不變)。
  • 學生可以自己檢查郵箱。
  • 學生不用等待答復。 (無阻塞)
  • 這幾乎總結了Actor模型的基本組成部分-傳遞消息。

    2.并發

    現在,假設有3位明智的老師和3位學生–每個學生都會向其他老師發送筆記。 那會發生什么呢? 實際上沒有任何變化。 每個人都有自己的郵箱。 這里需要注意的一個細微之處是:

    默認情況下,郵箱中的郵件按照到達的順序進行讀取/處理。

    在內部,默認情況下是ConcurrentLinkedQueue 。 而且由于沒有人等待郵件被提取,因此它只是一個無阻塞的消息。 (有多種內置郵箱,包括有界郵箱和基于優先級的郵箱 。實際上,我們也可以自己構建郵箱 )

    3.故障轉移

    想象一下,這三位老師來自三個不同的部門-歷史,地理和哲學。

    歷史老師回覆過去的事件記錄,地理老師則寄給我一個有趣的地方,哲學老師則引述一段話。 每個學生向每個老師發送消息并獲得答復。 學生不在乎該部門的哪個老師發回答復。 如果有一天老師生病怎么辦? 必須至少有一位老師來處理部門的郵件。 在這種情況下,該部門的另一位老師會加強工作。

    注意事項:

  • 可能會有一群演員在做不同的事情。
  • 演員可能會做一些導致異常的事情。 它無法自行恢復。 在這種情況下,可以created一個新的Actor來代替舊的Actor。 另外,Actor可以忽略該一條特定消息,然后繼續處理其余消息。 這些稱為指令,我們將在后面討論。
  • 4.多任務

    有所不同的是,假設這些教師中的每一個也都通過郵件發送考試成績(如果學生要求的話)。 同樣,演員可以舒適地處理多種type的消息。

    5.鏈接

    如果學生只想收到一封最終的綜合瑣事郵件而不是三封怎么辦?

    我們也可以通過Actors做到這一點。 我們可以將教師鏈接為一個層次結構。 稍后我們將討論主管,然后再回到有關期貨的話題。

    按照Mohan的要求,讓我們嘗試將類比組件與Actor模型中的組件進行映射。

    學生和老師成為我們的Actors 。 電子郵件收件箱將成為Mailbox組件。 請求和響應無法修改。 它們是immutable對象。 最后,Actor中的MessageDispatcher組件管理郵箱并將消息路由到相應的Mailbox 。

    聊夠了,讓我們編寫一些代碼…。

    翻譯自: https://www.javacodegeeks.com/2014/09/akka-notes-introducing-actors.html

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的Akka笔记–演员介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。