我有一个Scala (2.11.x),播放2.5.10应用程序。在这个应用程序中,我有各种Akka角色,它们可以读写数据库中的数据。我正在通过一个生命周期停止钩子来终止这些参与者,正如所描述的在医生里。对于其中的一个参与者,在发送PoisonPill终止它之前,我想向它发送一条消息,以便对数据库进行最后一次写入。但是,我收到了一个异常,因为当接收到该消息时,数据库连接已经被终止(有时,这是一个争用条件)。
是否有一种方法可以控制生命周期关机钩子执行顺序?
发布于 2017-06-26 06:17:13
在规模化中,它说:
停止挂钩在应用程序关闭时执行,与注册时相反。
所以,不完全是。
不过,你可能完全可以从你的演员内部处理这件事。下面是关于如何协调参与者系统中的关机的指南。我不确定这与基于游戏的应用程序集成得有多好:http://letitcrash.com/post/30165507578/shutdown-patterns-in-akka-2。
https://stackoverflow.com/questions/44751603
复制相似问题