0
我在Play(Scala)中創建WebSocket actor。在集合中存儲Akka actor的框架
參與者正在系統中的其他地方創建,我只需要將它們保存在一個地方,按照一些變量進行分組。
什麼是用來存儲它們的最佳實踐,以及一個佔用的內存量最小:
- 序列[演員]
- 序列[ActorRef]
- 別的東西嗎?
我在Play(Scala)中創建WebSocket actor。在集合中存儲Akka actor的框架
參與者正在系統中的其他地方創建,我只需要將它們保存在一個地方,按照一些變量進行分組。
什麼是用來存儲它們的最佳實踐,以及一個佔用的內存量最小:
你應該NEVER店演員 - 訪問的演員應該通過ActorRef
有幾個模式/你可以用它來找到你的角色的做法的唯一途徑。
首先是ActorSelection
,它需要建立正確的參與者層次結構。舉例來說,你必須按地理位置劃分的用戶,那麼你可能想選擇的演員像
這種方式,你可以找到使用通配符選擇所有的演員,雖然你會堅持只是一個屬性來過濾它們
另一種方式是hav e數據結構可以存儲所有的標誌/屬性,例如。
案例類UserRef(參考:ActorRef,名稱:字符串,國家:字符串,郵編:整數,活躍:布爾)
那麼,你的 '目錄' 將它們存儲爲users = List[UserRef]
和你將能夠使用users.filter(_.active = true)
或users.find(_.name = "superuser")