快速可扩展的实时应用程序(Hazelcast Jet是一种好方法吗?)

快速可扩展的实时应用程序(Hazelcast Jet是一种好方法吗?),hazelcast,vert.x,sockjs,hazelcast-imap,hazelcast-jet,Hazelcast,Vert.x,Sockjs,Hazelcast Imap,Hazelcast Jet,实际上,在我们的体系结构中,我们使用了Hazelcast IMDG,以便在多个服务器节点之间共享有关用户操作性的信息 我们的地图具有以下结构:[key:String | value:CustomObject] 现在,我们想扩展我们的产品功能,我们想开发一个实时仪表板,通过执行以下操作来执行实时数据流: 复合聚集 连续查询 等等 在流程结束时,我们希望将结果“发送”到Vert.x Eventbus,然后发送到套接字层(SockJS),以便在仪表板中显示数据 我们需要建立一个可扩展的快速系统,以便处

实际上,在我们的体系结构中,我们使用了Hazelcast IMDG,以便在多个服务器节点之间共享有关用户操作性的信息

我们的地图具有以下结构:
[key:String | value:CustomObject]

现在,我们想扩展我们的产品功能,我们想开发一个实时仪表板,通过执行以下操作来执行实时数据流:

  • 复合聚集
  • 连续查询
  • 等等
  • 在流程结束时,我们希望将结果“发送”到Vert.x Eventbus,然后发送到套接字层(SockJS),以便在仪表板中显示数据

    我们需要建立一个可扩展的快速系统,以便处理大量数据,例如每秒数千个事件

    第一个图像代表我们当前(旧)的架构,第二个图像代表我们的“目标”架构



    您对目标体系结构有何看法

    Hazelcast Jet的作用是否正确,或者是否有其他方法执行这些操作(例如,仅使用Hazelcast IMDG



    提前谢谢。

    看起来很适合Hazelcast Jet。您可能会使用
    Sources.mapJournal()
    来处理添加到IMap中的条目。您可以轻松地聚合到滑动窗口中。使用
    SinkBuilder
    编写Vert.x事件总线接收器应该很简单。数千个事件/秒是一个较低的数字,这取决于您对每个事件所做的工作