情况是这样的,我的一个演员 (A) 由退避主管 (B) 监督。
我感兴趣的事件顺序如下:
- 系统启动,大家都很开心
- A 在处理消息时失败
- B 现在认为 A 被挂起,直到退避延迟过去
- B 收到一些他打算转发给 A 的消息 (MM)
- 退避延迟消失,B 重新启动 A
- 大家又开心了
在第 4 步,这些消息会发生什么情况?
他们迷路了吗?发送到死信?藏在B的某个地方,并在它重新启动/恢复时发送给A?
现在让我们添加另一个层:A 不是标准 Actor 而是带有 Stash 的 Actor。
在 A 的失败和它的重新启动/恢复之间存储的消息会发生什么? 它被丢弃了吗?是不是没藏起来?它是否保存在藏匿处?