1. 程式人生 > >Redis的釋出/訂閱(pub/sub)

Redis的釋出/訂閱(pub/sub)

釋出訂閱(pub/sub)是一種訊息通訊模式,主要的目的是解耦訊息釋出者和訊息訂閱者之間的耦合,這點和設計模式中的觀察者模式比較相似。pub /sub不僅僅解決釋出者和訂閱者直接程式碼級別耦合也解決兩者在物理部署上的耦合。redis作為一個pub/sub server,在訂閱者和釋出者之間起到了訊息路由的功能。訂閱者可以通過subscribe和psubscribe命令向redis server訂閱自己感興趣的訊息型別,redis將訊息型別(message)稱為頻道(channel);將Pmessage稱為模式。當釋出者通過publish命令向redis server傳送特定型別的訊息時。訂閱該訊息型別的全部client都會收到此訊息。這裡訊息的傳遞是多對多的。一個client可以訂閱多個 channel,也可以向多個channel傳送訊息。