So senden und empfangen Sie Nachrichten mit Redis PubSub

So senden und empfangen Sie Nachrichten mit Redis PubSub
Obwohl Redis als Datenbank- und Caching-Mechanismus berühmt ist, bietet es ein Publisher-Subscriber-Modell. Durch die Verwendung von Pub-Sub können eine beliebige Anzahl von Benutzern Kanäle abonnieren und Nachrichten empfangen, die von den Verlegern an diese Kanäle gesendet werden.

Lassen Sie uns in diesem Artikel sehen, wie das Redis Pub-Sub-Modell implementiert wird. Für die Vielfalt werden wir uns nicht für eine Programmiersprache entscheiden. Stattdessen werden wir RAW Redis -Befehle verwenden, um dies zu erreichen.

Wie Pub-Sub funktioniert

Das Pub-Sub-Modell ist ziemlich einfach. Wir erstellen zunächst einen Kanal, den ein Benutzer abonnieren kann.

Sobald ein Benutzer einen Kanal abonniert, können er keine Befehle an den Server senden. Der Schöpfer des Kanals (Publisher) kann jedoch Befehle senden und Nachrichten an den Server veröffentlichen.

Beachten Sie, dass ein einzelner Benutzer mehrere Kanäle gleichzeitig abonnieren kann.

Abonnieren eines Kanals

Um Pub-Sub zu implementieren, öffnen Sie das Terminal und melden Sie sich bei der Redis CLI an. Wir können nun einen Kanal mit dem Befehl abonnieren und den Namen der Kanäle abonnieren, die sich abonnieren sollen.

Beispiel:

Abonnieren Sie chat_room_1 chat_room_2

Der obige Befehl sollte Kanäle namens chat_room_1 und chat_room_2 abonnieren.

Zu diesem Zeitpunkt kann der Benutzer jede Meldung lesen, die diesen Kanälen veröffentlicht wird.

Veröffentlichungsnachrichten

Öffnen Sie als nächstes ein neues Terminalfenster und stellen Sie eine Verbindung zum Redis -Server her. Sobald wir verbunden sind, können wir Nachrichten an den Kanälen veröffentlichen wie:

127.0.0.1: 6379> veröffentlichen Chat_room_1 "Hallo allerseits, willkommen im Chatraum 1"
(Ganzzahl) 1

Der obige Befehl sollte die Nachricht an Kanal eins veröffentlichen, wo die Abonnenten sie empfangen können.

Gehen Sie zur Abonnenten -Terminalsitzung, um sie zu überprüfen.

Die im Abonnentenfenster empfangene Nachricht besteht aus drei Hauptkomponenten:

  1. Bekanntmachung, der die Nachricht angibt.
  2. Der Kanal, an den die Nachricht gesendet wurde.
  3. Der Nachrichteninhalt.

Hinweis: Veröffentlichung einer Nachricht an einen Kanal, der nicht existiert (dh es gibt keine Abonnenten), zwingt Redis, die Nachricht zu verwerfen und 0 zurückzugeben.

Beispiel:

127.0.0.1: 6379> veröffentlichen Nomessage Nochannel
(Ganzzahl) 0

Abschluss

Dieser Artikel behandelt die Verwendung des Redis Pub-Sub-Modells durch ein einfaches Tutorial. Durch die Verwendung von RAW-Redis-Befehlen und der Verzicht auf die Programmiersprache sollten die Leser am Ende dieses Artikels in der Lage sein, Nachrichten mit Redis Pub-Sub zu senden und zu empfangen.