Verticle之间在Vert.x之间共享数据的最佳方法是什么?我最感兴趣的是低开销,直接,并发访问。当多个Verticle需要访问足够大的东西而不能以json的形式发送时,事件系统似乎不合适。
简单示例 - 使用Vert.x考虑虚构的邮政服务。假设它有两个顶点:一个用于计算要发送的下一个包,另一个用于计算前一小时由运送包裹的车辆消耗的燃料。
假设在任何给定时刻都有1000个包。可能有一个数据库返回这些,但随后它将需要返回所有包,因为用于确定要发送哪个包/燃料消耗的算法是否足够复杂并且由两个Verticle执行。
到目前为止,我发现了这些:
一些建议是:
JSON.stringify
/ JSON.parse
到vertx.getMap
。这看起来对我来说是一个很大的开销,特别是当事情经常更新时(例如包裹位置可以包含GPS坐标)这里是否存在规范的Vert.x解决方案,我无法识别?我可以用不同的方式划分事物,有更多的垂直,更低/更高的粒度等,如果这是要走的路 - 也就是说这更像是关于Vert.x模型的架构问题。
我也有兴趣看到与上述相关的开源示例,如果有的话。
答案 0 :(得分:0)
node
应用程序的群集故事并不是很好,特别是如果您不想使用Java。
由于听起来您希望拥有最低级别的数据共享控制,因此我建议使用传统的websockets在Verticle之间桥接事件总线。