Latest web development tutorials

Redis publicar e assinar

Redis publicação-assinatura (pub / sub) é um modo de mensagens: o remetente (pub) para enviar uma mensagem, os assinantes (sub) receber mensagens.

Redis cliente pode se inscrever em qualquer número de canais.

A figura abaixo mostra o canal 1 canal, e subscrever o canal de três clientes - a relação client2, client5 e entre client1:

pubsub1

Quando uma nova mensagem é enviada para o canal por channel1 comando Publicar, esta mensagem será enviada para inscrever-se a seus três clientes:

pubsub2

Exemplos

O exemplo a seguir demonstra como isso funciona publicar e assinar. No nosso exemplo, criamos um canal por assinatura chamadoredisChat:

redis 127.0.0.1:6379> SUBSCRIBE redisChat

Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "redisChat"
3) (integer) 1

Agora, vamos voltar a abrir um cliente Redis, e depois publicar redisChat mensagem duas vezes no mesmo canal, os assinantes serão capazes de receber a mensagem.

redis 127.0.0.1:6379> PUBLISH redisChat "Redis is a great caching technique"

(integer) 1

redis 127.0.0.1:6379> PUBLISH redisChat "Learn redis by w3big.com"

(integer) 1

# 订阅者的客户端会显示如下消息
1) "message"
2) "redisChat"
3) "Redis is a great caching technique"
1) "message"
2) "redisChat"
3) "Learn redis by w3big.com"

Redis publicar e assinar comando

A tabela a seguir lista os redis publicar subscrever os comandos mais usados:

Não. Command and description
1 padrão PSUBSCRIBE [padrão ...]
Se inscrever em uma ou mais corresponde a um determinado padrão de canais.
2 Pubsub subcomando [argumento [argumento ...] ]
Ver subscrição e estado do sistema de publicação.
3 PUBLIQUE mensagem de canal
A informação é enviada para o canal especificado.
4 PUNSUBSCRIBE [padrão [padrão ...]]
Cancelar a inscrição de todos os canais de dados padrão.
5 Assine canal [canal ...]
Inscrever-se para a informação dada a um ou mais canais.
6 UNSUBSCRIBE [canal [canal ...]]
Refere-se a cancelar a assinatura de um determinado canal.