Mit Streams können der gleiche Stream von verschiedenen Verbrauchern mit dem XRead -Befehl verzehrt werden. Damit werden dieselben Nachrichten an mehrere Clients gesendet. In einigen Fällen müssen wir eine andere Untergruppe von Nachrichten aus demselben Strom an mehrere Verbraucher weitergeben. Das Konzept der Verbrauchergruppen wurde mit Redis -Streams implementiert, um dies wie in der folgenden Abbildung zu unterstützen.
Wie in der obigen Abbildung gezeigt, die drei Verbraucher Verbraucher1, Verbraucher2 und Verbraucher3 verbrauchen verschiedene Einträge aus dem Stream Benutzerquerien. Jeder dieser Verbraucher ist Teil der Verbrauchergruppe 1. Als Mitglied des Verbrauchers garantiert Gruppe 1 die folgenden Fakten:
Der Xgroup -Befehl
Die Xgroup ist der Befehl Container für die Verwaltung der mit Redis -Streams verbundenen Verbrauchergruppen. Es besteht aus mehreren wichtigen Unterbewohnern, um Verbrauchergruppen zu erstellen/zu löschen und Verbraucher zu einer Gruppe zu erstellen/zu löschen. Die grundlegende Syntax des Xgroup -Befehls lautet wie folgt:
Xgroup [[Wert] [Optionen]…]: Der Unterbefehlsname für Operationen wie die Erstellung und Löschung von Verbrauchern und Verbrauchergruppen.
: Die Unterbefehlsargumente, falls verfügbar.
[Wert]: Wenn ein Argument einen Wert nimmt, kann es angegeben werden. Es ist optional und nur für bestimmte Befehle zulässig.
Das zurückgegebene Ergebnis variiert basierend auf dem angegebenen Unteroffin.
Die Xgroup -Unterbefehle
Für den Befehl Xgroup können mehrere Unterbefehle verwendet werden. Es gibt einen besonderen Unterbefehl namens 'Hilfe' Dies zeigt alle zur Verwendung zur Verfügung stehenden Unterbefehle an.
Xgroup -HilfeDer Hilfe Der Unterbefehl gibt eine Reihe von Unterbewohnern mit ihren Beschreibungen zurück.
ERSTELLEN
Der ERSTELLEN Der Unterbefehl kann verwendet werden, um eine neue Verbrauchergruppe für einen bestimmten Stream zu erstellen. Die Syntax ist wie folgt:
Dadurch wird eine neue Verbrauchergruppe erstellt, die durch den 'Group_Name' identifiziert wird, der dem gegebenen 'zugeordnet istStream_key '. Der "Mkstream" Die Option erstellt einen neuen Stream mit der Länge von 0, wenn der angegebene Stream im Redis -Datenspeicher nicht vorhanden ist.
CreateConsumer
Wenn Sie für eine bestimmte Gruppe einen Verbraucher erstellen müssen. Es akzeptiert nur den Stream -Schlüssel, den Gruppennamen des Verbrauchers und einen eindeutigen Verbrauchernamen als Argumente.
Delconsumer
Ein erstellter Verbraucher kann mit dem Delconsumer -Unterbefehl mit dem Xgroup -Befehl gelöscht werden. Die Delconsumer -Subcomand -Syntax lautet wie folgt:
Beachten Sie, dass bevor Sie einen Verbraucher aus der Verbrauchergruppe löschen. Dieser Befehl gibt die Anzahl der ausstehenden Nachrichten zurück, die dem gelöschten Verbraucher zugeordnet sind.
ZERSTÖREN
Wenn Sie eine Verbrauchergruppe mit allen Verbrauchern und ausstehenden Nachrichten löschen müssen. Es wird also empfohlen, diesen Befehl mit Sorgfalt zu verwenden.
Dieser Befehl gibt eine Ganzzahl 0 oder 1 zurück, die die Anzahl der gelöschten Verbrauchergruppen entspricht.
SetId
Mit dem SETID -Unterbefehl können Sie den zuletzt gelieferten ID -Wert ändern. Wenn Sie alle Einträge aus dem Stream verarbeiten müssen, sollte die zuletzt gelieferte ID mit dem SETID -Unterbefehl auf 0 eingestellt werden.
Wenn die zuletzt gelieferte ID ordnungsgemäß festgelegt wurde, gibt der Befehl eine einfache Zeichenfolge zurück OK.
Abschluss
Der Befehl Xgroup Container wird verwendet, um die mit einem bestimmten Stream verbundenen Verbrauchergruppen zu verwalten. Das Sonderangebot HILFE Der Befehl kann verwendet werden, um alle verfügbaren Unterbefehle für den Xgroup -Befehl anzuzeigen. Die Erstellung und Löschung von Verbrauchern und Verbrauchergruppen kann mit den genannten Unterbefehlern durchgeführt werden. Darüber hinaus unterstützt der SETID -Subcomand die Aktualisierung der zuletzt gelieferten ID einer bestimmten Verbrauchergruppe. Insgesamt variiert die Xgroup -Befehlsausgabe mit der Verwendung des Unterbefehls.