首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在所有集群中限制单个实例的垂直点

在所有集群中限制单个实例的垂直点
EN

Stack Overflow用户
提问于 2020-04-18 12:58:58
回答 1查看 280关注 0票数 0

我有一个带有几个眩晕的Vert.x应用程序,可以与不同的busesdbs (mongo、redis、兔子、kafka等)交互。

其中有一个专用于与外部api (非常老的)通信的垂直线,它允许一个持久连接,并且可以从单个(预定义的)源进行通信。

我使用相同的代码(自动缩放)部署vertx的mutli实例,并使用hazelcast作为集群管理器,使它们充当集群。

external-api verticle的创建限制为单个实例的最佳实践是什么,我看了如下:

  • SharedData.Lock() -但是我需要用异步旋转锁logic
  • High Availability包装它--很适合终止和自动缩放,但不强制单个verticle
  • worker verticle的活动--以便在每个实例

中创建一个工作程序。

我可以使用以上所有的混合,并创建所需的功能,但我似乎有些复杂.

我应该将我的垂直线分离到不同的服务器上,还是有一些更简单的解决方案我还没有想到呢?

EN

回答 1

Stack Overflow用户

发布于 2020-04-20 09:22:46

您不需要单一的垂直点,只留下这个垂直点而只是处于无状态状态,并在代理服务中应用您的连接--在您可以将该服务注册为HttpEndpoint、Evenbus、Message或JDBC服务类型之后,您将有一个与db或外部http源进行通信的点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61289513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档