我试图了解应该如何配置vertx以实现高可用性。
我知道vertx支持高可用性,并且能够将工作负载重新启动或重定向到集群上运行的另一个verticle。
但是如何解决路由问题?我的应用程序基本上是一个Web应用程序,并且具有一个带有公共URL的HTTP终结点-实现为标准的Vertx Web服务器+路由器。 这是我的问题-如何防止此Web服务器/路由器崩溃? 我的理解是我不能有多个http服务器提供相同的路由,或者可以吗?
传统上,我会使用负载平衡器和两个或多个冗余HTTP端点,但是我不确定如何在vertx中实现这一点。
使用Kubernetes进行生产是否能够处理HTTP端点的负载平衡?
答案 0 :(得分:2)
如果您的应用程序包含为HTTP请求提供服务的单个Verticle,则不需要Vert.x HA,而是在部署Verticle的所有JVM之前都需要一个反向代理/负载均衡器。
如果您已经在生产中使用Kubernetes:只需在副本之前创建服务(通常通过选择Pod声明的标签)即可。
否则,不要为此安装Kubernetes,仅此而已。有很多很棒的开源和商业代理/平衡器(例如haproxy或ngninx)。