Redis的發布訂閱(Pub/Sub)是一種消息傳遞模式,允許客戶端在指定的主題(channel)上發布消息,而其他客戶端可以訂閱這些主題以接收消息。這種模式在實時通信、通知系統、聊天應用等場景中非常有用。
要發布消息,客戶端需要執行以下命令:
PUBLISH channel message
channel
:消息將要發送到的主題。message
:要發送的消息內容。例如,要向名為my_channel
的主題發送一條消息,可以使用以下命令:
PUBLISH my_channel "Hello, subscribers!"
要訂閱主題,客戶端需要執行以下命令:
SUBSCRIBE channel [channel ...]
channel
:要訂閱的主題。可以一次訂閱多個主題,只需用空格分隔即可。例如,要訂閱名為my_channel
和another_channel
的主題,可以使用以下命令:
SUBSCRIBE my_channel another_channel
要取消訂閱某個主題,客戶端可以執行以下命令:
UNSUBSCRIBE [channel ...]
channel
:要取消訂閱的主題。可以一次取消訂閱多個主題,只需用空格分隔即可。例如,要取消訂閱名為my_channel
的主題,可以使用以下命令:
UNSUBSCRIBE my_channel
以下是一個簡單的示例,展示了如何使用發布訂閱功能:
my_channel
主題:SUBSCRIBE my_channel
my_channel
主題:PUBLISH my_channel "Hello, subscribers!"
1) "message"
2) "Hello, subscribers!"
my_channel
主題:UNSUBSCRIBE my_channel
my_channel
主題,但客戶端A不會收到消息,因為它已經取消訂閱了該主題。