首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设计实时股票价格的发布/订阅架构

如何设计实时股票价格的发布/订阅架构
EN

Stack Overflow用户
提问于 2019-06-14 14:34:11
回答 1查看 2K关注 0票数 3

我有一个外部系统,可以发布实时财务数据(例如,来自世界各地交易所的股票报价和价格)。

这个外部系统对每个帐户连接的股票数量有一些限制,因为我们有许多应用程序需要消费这些实时流数据,所以我们不希望每个应用程序连接到该外部系统并自行管理容量,因此我们希望设计一个单一的系统,该系统为所有股票进行消费,然后发布到某个消息队列(例如kafka或pulsar),然后下游应用程序可以从kafka主题消费。

问题是我们如何设计主题,股票的数量在1000万左右,但每个应用程序只对其中的子集感兴趣,子集的大小可以很小,不同的子集可以共享相同的股票。

我所能想到的是动态地创建一些流媒体作业(例如,kafka流媒体或单独的flink作业来做预聚合,从所有主题中收集每个消费者的感兴趣的股票,然后发布到每个消费者的另一个主题),这样每个消费者将有自己的主题,只有其感兴趣的股票,但肯定会带来消息传输时间,重复消息和延迟的开销,此外,如果消费者越来越多,容量也可能是一个问题。

我不知道是否有更好的方法来达到我的要求,请指教,谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-09-18 02:33:08

如果我正确理解了您的要求,您有一些股票价格的实时提要,其中包括该交易所所有证券的报价,即APPL、IBM和MSFT报价都包含在该单个提要中。此外,您不希望消费者直接附加到此提要,因此需要将该信息存储在中间消息系统中

在这种情况下,您可能需要考虑使用Pulsar的key_shared subscription根据股票代码对数据进行预排序。然后,这些消费者中的每一个都可以将他们的结果发布到股票代码特定的主题。然后,客户端将只需要订阅他们感兴趣的那些主题,并使用该数据的子集。

所有代码符号-> (500个特定于符号的主题)。<-客户端订阅其中的子集。

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

https://stackoverflow.com/questions/56592677

复制
相关文章

相似问题

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