我想在Akka集群启动时进行一些初始化/迁移。实际上,我希望它能够完全运行,但不接受来自“外部世界”的命令/事件。
现在我有一个单例演员,该演员跟踪已应用的迁移并逐个运行挂起的迁移。但是,没有什么可以阻止参与者接收其他工作流发起的事件。这留下了必须避免的并发更改的可能性。
我考虑为当前模式群集引入全局标志。当将其设置为Migrating
时,接受来自外部世界的服务的请求应拒绝或缓冲请求,直到模式更改回“运行”为止。 / p>
总体而言,我对Akka尤其是Akka群集没有太多经验。也许有人可以给我一些建议,告诉我如何更好地解决迁移/初始化问题。