redis - Stackexchange.Redis,我可以一次发布到多个 channel 吗?

标签 redis publish subscribe stackexchange.redis

我能否使用 glob 样式模式在同一命令中将消息发布到多个 channel ,例如 Connection.GetSubscriber().Publish("room/*", "my message") 和消息被发布到所有匹配模式的 channel ?

如果我误解了 Redis 中的基本发布/订阅模式,那么上述问题可能毫无意义。我的理解是,每个 Subscribe 命令都会在 Redis 服务器上建立一个 channel ,因此服务器知道 channel ID,因此当服务器收到发布命令时,它应该能够“扇出” "向所有匹配 glob-style 模式的 channel 发布消息。如果我错了,请指正。

附加问题,我想我也可以使用 glob 样式模式订阅多个 channel ,对吗?

谢谢

最佳答案

您可以订阅基于模式的 channel 订阅,但是当您发布时,您将发布到一个 channel 名称。所有匹配的订阅(无论是特定的还是基于模式的)都将收到消息。除了基于全局的订阅外,没有“扇出”。

关于redis - Stackexchange.Redis,我可以一次发布到多个 channel 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23311451/

相关文章:

ruby - 如何将自定义 redis url 传递给 Rack::Session::Redis?

erlang - gen_server 中引发的 Redis 异常

android - 将应用程序发布到 Google Play 商店时的库许可

reactjs - 监听消费者组件中的 ReactContext 变量变化

python - txredisapi 异步订阅和监听

angular - 如何在 Angular 2 轮询服务中访问 .subscribe 之外的值

ubuntu - Redis编译错误

ruby - 在 Redis 中为 Ruby 重新创建 zdiffstore

angular - 如何通过 Visual Studio Publish 为 Angular 项目定义 <base href ="/ProjectName/">?

google-apps-script - 如何在不更改 URL 的情况下重新发布 Web 应用程序