天天看點

Redis_03_Redis釋出訂閱(Pub/Sub)

文章目錄

  • ​​一、前言​​
  • ​​二、釋出訂閱模式架構​​
  • ​​三、釋出訂閱基本指令​​
  • ​​3.1 subscribe指令按頻道名稱訂閱頻道​​
  • ​​3.2 psubscribe指令按規則比對訂閱頻道​​
  • ​​四、尾聲​​

一、前言

本文介紹 Redis 自帶的簡單的消息隊列。

MySQL自己有緩存層,但是緩存層實作的不是很好,是以才有了 Redis 這種專門的緩存層;

Redis 自己有簡單的消息隊列,但是消息隊列很簡單,所有才有 RabbitMQ RocketMQ Kafka 這種專門的消息隊列。

二、釋出訂閱模式架構

List

Redis_03_Redis釋出訂閱(Pub/Sub)

釋出訂閱

Redis_03_Redis釋出訂閱(Pub/Sub)

三、釋出訂閱基本指令

3.1 subscribe指令按頻道名稱訂閱頻道

先訂閱後釋出最後解除訂閱

# 訂閱頻道:可以一次訂閱多個
subscribe channel-1 channel-2 channel-3
# 向指定頻道釋出消息:
publish channel-1 2673
# 取消訂閱:      
Redis_03_Redis釋出訂閱(Pub/Sub)

3.2 psubscribe指令按規則比對訂閱頻道

先訂閱

消費端1,運動資訊:  psubscribe *sport 
消費端2,所有新聞: psubscribe news* 
消費端3,天氣新聞: psubscribe news-weather      

後釋出

生産者,釋出3條資訊
publish news-sport kobe
publish news-music jaychou
publish news-weather sunny      
Redis_03_Redis釋出訂閱(Pub/Sub)

四、尾聲