Web 如何在分布式系统中部署akka,以实现高可用性?

Web 如何在分布式系统中部署akka,以实现高可用性?,web,akka,distributed,high-availability,failover,Web,Akka,Distributed,High Availability,Failover,我是阿克卡的新手。但我在web项目中工作了几年。 以前,我们使用“ngix+tomcat集群”计划,一旦一个tomcat服务器崩溃(物理机器崩溃),tomcat集群的其他成员将接管发送给故障服务器的请求。通过这一点,我们实现了高可用性。 在我们的新web项目中,我们计划使用akka来实现容错性和可伸缩性。这里有一个作为主参与者的服务器,其任务是将请求消息从外部分派给子参与者。子参与者可以在本地或远程分发。一旦任何一个子演员失败,主演员就会修复它。 我的问题是,一旦主参与者失败(可能是机器崩溃),

我是阿克卡的新手。但我在web项目中工作了几年。 以前,我们使用“ngix+tomcat集群”计划,一旦一个tomcat服务器崩溃(物理机器崩溃),tomcat集群的其他成员将接管发送给故障服务器的请求。通过这一点,我们实现了高可用性。 在我们的新web项目中,我们计划使用akka来实现容错性和可伸缩性。这里有一个作为主参与者的服务器,其任务是将请求消息从外部分派给子参与者。子参与者可以在本地或远程分发。一旦任何一个子演员失败,主演员就会修复它。 我的问题是,一旦主参与者失败(可能是机器崩溃),在这种情况下,我应该如何实现高可用性?如果主参与者所在的机器崩溃,我们必须手动重新启动机器。在这段时间内,服务必须暂停一段时间。这是我们不能接受的。
有人能告诉我,我应该如何解决这个问题吗?

我建议使用外部负载平衡器。例如,您可以将Akka群集节点的所有地址报告给web应用的中间层(并在其中缓存一段时间),并将中间层的负载平衡请求报告给Akka后端(例如,每次随机选取群集节点)


如果您的Akka后端需要为您的子角色获取某种单点资源,那么您可以尝试使用a作为主角色。在这种情况下,所有群集节点都应该向群集单体发送客户端请求,然后群集单体可以以某种特定的方式在所有群集节点之间分配任务。

您得到解决方案了吗。。?