English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Publication et abonnement Redis (pub/sub) est un mode de communication de messages : l'émetteur (pub) envoie des messages, et les abonnés (sub) reçoivent des messages.
Les clients Redis peuvent s'abonner à un nombre quelconque de canaux.
La figure suivante montre le canal channel1 , ainsi que les trois clients abonnés à ce canal - client2 、 client5 et client1 les relations entre
Lorsqu'un nouveau message est envoyé au canal channel via la commande PUBLISH1 lorsque ce message est envoyé aux trois clients abonnés :
Le prochain exemple montre comment fonctionne la publication et l'abonnement, nécessitant l'ouverture de deux instances de redis-客户端
Dans notre exemple, nous avons créé un canal abonné nommé w3codeboxChat:
Maintenant, redémarrez d'abord un client Redis, puis dans le même canal w3codeboxChat publie deux messages, et les abonnés peuvent recevoir les messages.
Le processus est le suivant :
Démarrer le service Redis local, ouvrir deux instances de redis-客户端
在第一个 redis-客户端输入 SUBSCRIBE w3codeboxChat,意思是订阅 w3codeboxChat 频道。
在第二个 redis-客户端输入 PUBLISH w3codeboxChat "Redis PUBLISH test" 往 w3codeboxChat 频道消息,这个时候在第一个 redis-客户端第二个 redis-消息测试发送客户端
下表列出了 redis 发布订阅常用命令:
序号 | 命令及描述 |
---|---|
1 | PSUBSCRIBE pattern [pattern ...] 订阅一个或多个符合给定模式的频道。 |
2 | PUBSUB subcommand [argument [argument ...]] 查看订阅与发布系统状态。 |
3 | PUBLISH channel message 将信息发送到指定的频道。 |
4 | PUNSUBSCRIBE [pattern [pattern ...]] 退订所有给定模式的频道。 |
5 | SUBSCRIBE channel [channel ...] 订阅给定的一个或多个频道的信息。 |
6 | UNSUBSCRIBE [channel [channel ...]] 指退订给定的频道。 |