跳到主要内容

Saydo OpenMAMA实现

Saydo PubSub+ 可以用于在发布者和订阅者之间传输 OpenMAMA 消息。

下图提供了一个简化的说明,展示了 Solace PubSub+ 如何与使用 OpenMAMA 和 OpenMAMDA API 的客户端应用程序互操作,以将消息发布到众所周知的主题,并提交对这些主题上发布的消息的订阅请求。

在多站点部署中,相同的元素集合(发布者、订阅者、PubSub+ 缓存实例)将出现在广域网的许多站点上,它们依赖的事件代理将通过多节点路由连接。

OpenMAMA 数据分发系统

img

部署 SolOpenMAMA 时,您可以使用交互式发布者和/或使用最后值消息缓存来满足订阅者对初始值和实时数据的请求,这些数据用于符号和数据字典。

  • 交互式发布者:交互式发布者直接为订阅者提供订阅者请求的符号的初始值、实时数据或初始值后跟实时数据。交互式发布者使用请求/回复消息交换模式(MEP)。

订阅者也可以从同一个交互式发布者那里获取数据字典的初始值。

  • 最后值消息缓存:可以实现 PubSub+ 缓存设施,为所有发布的主题提供最后值缓存服务。部署 PubSub+ 缓存实例时,它们允许稍后加入的订阅应用程序从缓存中获取符号的最新值,而不是直接从发布者请求它。

实现 PubSub+ 缓存时,发布者将特定符号的初始值和实时数据消息发送到事件代理,这些符号在适当的主题语法中定义。然后,事件代理将这些已发布的消息分发给订阅这些主题的 Linux 服务器上托管的 PubSub+ 缓存实例。这允许对获取符号初始值感兴趣的订阅者从对感兴趣符号有主题订阅的缓存组(缓存集群)请求最新数据。当收到缓存请求时,其中一个 PubSub+ 缓存实例将向订阅者返回最新缓存的初始值。

Saydo OpenMAMA 解决方案不实现数据源处理器。