redis可以支持多少个pub/sub频道?

flmtquvp  于 2021-06-09  发布在  Redis
关注(0)|答案(3)|浏览(705)

我刚开始使用redis,我正在尝试理解它是如何工作的,所以如果我要说的不正确,我很抱歉。
我想构建一个实时系统,其中python应用程序(我们称之为数据收集器)从大约600个市场检索股票市场交易。这些交易应该被发送到django应用程序并实时显示在前端,所以我会让python检索交易>django接收它们并将它们发送到页面。
基本上我会使用redis作为消息代理,它是一个pub/sub系统。所以数据采集器总是在运行,它检索交易并将它们发送到通道;每个市场都有一个渠道(600+)。在django端,只要用户打开market xyz页面,django就会连接到market xyz的redis渠道,并获取该渠道的交易。请记住,这些数据都不需要存储,只需要显示在我的前端。
该系统应该工作,在纸面上,唯一让我怀疑的是大量的渠道,在这种情况下。redis会支持非常多的频道吗?或者不取决于我创建了多少个频道?我是不是应该另找一种方法?

qco9c6ql

qco9c6ql1#

这完全取决于您的服务器配置。
一部分来自通道数还有其他的事情要考虑,比如通过客户端浏览器并发连接的套接字数。
您可以参考下面的链接来详细了解pub/sub的工作
在这里

w80xi6nr

w80xi6nr2#

为了找到满足实时性要求的最大通道数,您需要执行延迟分析,并在[number of channels vs your desired latency]上找到一致意见。这将是不明智的,去从直觉的最大数量的渠道,因为它可能不会为您的需求提供丰硕的成果。
下面是一个关于redis通道/延迟分析的小讨论。
此外,除了上面提到的之外,如果需要的话,您还有以下两种选择来提高性能,它们是
redis群集
应用redis逻辑数据库

vaqhlq81

vaqhlq813#

如前所述:redis pub sub max订阅者和发布者
redis对最大通道数没有硬性限制;它是用户可配置的。

相关问题