我们目前正在从 Akka 2.0.4 更新到 2.4.2(我知道,这是一个很大的飞跃,但没有人想过逐步进行)。
无论如何,在旧代码库中,我们的主节点连接到一些有时会失败的远程从节点(“为什么”仍有待调查)。当一个slave死掉时,master会收到一个RemoteClientShutdown事件,我们可以从中提取getRemoteAddress
并相应地处理它(例如,每封指向故障节点地址的电子邮件通知管理员)。
在版本 2.4.2 中,该类被RemotingShutdownEventRemoteClientShutdown
替换(至少我认为是这样),作为一个对象,它不携带有关事件源的任何特定信息。
我检查了迁移指南以及当前文档,但找不到有关如何解决此问题的信息。根据事件总线文档,提取此类信息的唯一方法是在消息中提供它(“请注意,事件总线不保留已发布消息的发送者。如果您需要对原始发送者的引用,则必须在消息中提供它”)。
我应该以某种方式覆盖远程系统关闭时发送的消息吗?或者有没有其他推荐的方法来解决它?我希望这个问题不是太新手,我对 Akka 还是很陌生。