Akka PoisonPill的使用案例

时间:2015-06-04 01:53:50

标签: akka message fault-tolerance

根据PoisonPill的Akka文档:

  

您还可以向actor发送akka.actor.PoisonPill消息,该消息将在处理消息时停止actor。 PoisonPill作为普通邮件排队,并将在已经在邮箱中排队的邮件之后处理。

虽然这样一个功能的实用性/实用性对于Akka Guru来说可能是显而易见的,但对于一个新手来说,这听起来完全没用/鲁莽/危险。

所以我问:这条消息的重点是什么?出于何种原因何时会使用它?!

1 个答案:

答案 0 :(得分:2)

我们使用名为disposable actors的模式:

  • 为每个应用程序请求创建一个新的临时actor。
  • 此演员可能会创建一些其他演员来完成与请求相关的工作。
  • 处理结果将发送回客户端。
  • 与此请求相关的所有临时演员都将被杀死。这就是使用PoisonPill的地方。

创建一个actor意味着开销非常低(大约300字节的RAM),所以这是一个很好的做法。