在我的应用程序中,我有一个服务器节点和几个工作节点,每个节点有一个actor。每个actor将初始消息发送到服务器,服务器将其添加到Router。但是当客户端死机(例如程序被杀死)时,路由器中的路由数量保持不变。
如何从死去的演员那里清理路由器?
答案 0 :(得分:2)
Akka有一些你可以覆盖的生命周期方法。例如,在preStart
方法上,您可以将您的演员注册到路由器,在postStop
上可以将其删除。
override def preStart() {
router ! AddMe
}
override def postStop() {
router ! RemoveMe
}
Akka对演员的生命周期有很好的documentation。