【发布时间】:2020-07-14 17:32:28
【问题描述】:
在 Akka Actors(使用 Scala)中,可以使用监督策略来处理异常。这个策略可以根据异常的类型决定如何处理actor。据我了解,有四种可能的结果:
- 恢复- 让子 Actor 保持其当前状态并继续处理新消息,就像什么都没发生一样。
- 重新启动 - 重新启动子actor,即杀死当前失败的子actor并创建一个新的子actor。
- 停止 - 永久关闭子actor。
- 升级 - 让主管的主管处理此错误。
The documentation 明确指出,在重新启动 Actor 时,当前消息将丢失,必须进行处理。但是,它没有明确提及是否同样适用于简历。它是继续处理该消息(假设某些外部因素导致该异常不再存在),还是继续处理邮箱中的下一条消息?
【问题讨论】:
标签: scala akka actor akka-supervision