通俗地说,什么是Redis Pub/Sub?

发布于 2024-11-03 02:25:55 字数 28 浏览 6 评论 0原文

我为什么要使用它? 举一些非常基本的例子。

Why would I use it?
Give some very basic examples.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

戈亓 2024-11-10 02:25:55

Redis 客户端订阅以接收标有特定标签的消息,称为通道。其他客户端发布到此频道。每次任何人向通道发布消息时,Redis 都会通知每个订阅客户端。

您还可以订阅频道模式 - 考虑正则表达式匹配。

这有助于使代码可分发。它允许代码位在不同的进程甚至可能不同的机器中运行,并通过这些队列相互通信。

此功能来自重复的用户请求此处给出了一个示例用例

新闻相关网站需要更新
其主页的缓存副本每隔
发表新文章的时间。

后台缓存工作进程
订阅所有开始的频道
与“新文章。”:

redis>订阅新文章。*

文章发布过程创建
一篇新技术文章(在此
例如,本文的 ID 为“1021”),
将文章的 ID 添加到集合中
所有技术文章,并发布
文章的 ID
“new.article.technology”频道:

redis>多
好的
redis> SET Article.technology.1021 “在今天的科技新闻中,......”
已排队
redis> SADD文章.技术1021
已排队
redis>发布新文章技术 1021
已排队
redis>执行
1. 好的
2.(整数)1
3.(整数)1

此时,后台缓存
工作进程会收到一条消息
并立即知道一个新的
科技文章发表,
随后执行适当的
回调重新生成主页。

http://redis.io/topics/pubsub

A redis client subscribes to receive messages marked with a specific tag, termed channel. Other clients publish to this channel. Redis notifies each subscribing client each time a message is published by anyone to the channel.

You can also subscribe to a channel pattern - think regex matching.

This helps make code distributable. It allows bits of code to run in different processes, and potentially even different machines, and to communicate with each other via these queues.

This feature comes from repeated user requests. There is an example use-case given here:

a news-related site needs to update
the cached copy of its home page every
time that a new article is published.

The background cache worker process
subscribes to all channels that begin
with ‘new.article.’:

redis> PSUBSCRIBE new.article.*

The article publishing process creates
a new technology article (in this
example, this article has ID ‘1021’),
adds the article’s ID to the set of
all technology articles, and publishes
the article’s ID to the
‘new.article.technology’ channel:

redis> MULTI
OK
redis> SET article.technology.1021 "In today's technology news, ..."
QUEUED
redis> SADD article.technology 1021
QUEUED
redis> PUBLISH new.article.technology 1021
QUEUED
redis> EXEC
1. OK
2. (integer) 1
3. (integer) 1

At this point, the background cache
worker process will receive a message
and know immediately that a new
technology article was published,
subsequently executing the appropriate
callback to re-generate the home page.

http://redis.io/topics/pubsub

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文