Redis Blpop

Redis Blpop
W tym artykule dowie się, jak korzystać z polecenia Redis BLPOP do zarządzania listami. W Redis lista jest niczym więcej niż zbiorem wartości ciągów posortowanych według kolejności wstawiania.

Listy to jedne z najczęstszych i najcenniejszych typów w Redis. Nie tylko dlatego, że zapewniają lepsze wrażenia z pamięci w porównaniu z innymi typami, takimi jak skróty, ale także dlatego, że są łatwe w użyciu i zarządzanie.

Zacznijmy od podstaw.

Redis Utwórz listę

Ponieważ Redis jest bazą danych wartości kluczowej, musimy utworzyć klucz do przechowywania listy elementów.

Redis używa pojęcia lewego i prawego do dodawania i usuwania elementów. Na przykład, aby dodać element po lewej stronie listy, używamy polecenia LPUSH. Do właściwego wstawienia użyj polecenia rpush.

Weźmy przykład pokazany poniżej:

127.0.0.1: 6379> LPUSH Languages ​​Python
(liczba całkowita) 1

W powyższym przykładzie używamy polecenia LPUSH, aby utworzyć nowy klawisz z jednym elementem na liście.

Po utworzeniu możemy dodać elementy, jak pokazano w poniższych poleceniach przykładowych:

127.0.0.1: 6379> LPUSH Języki JavaScript Ocaml Elixir C C++

Uwaga: Możesz także użyć polecenia RPUSH, jak pokazano w poniższym przykładzie:

127.0.0.1: 6379> języki rpush sql java c#

Należy pamiętać, że kolejność wstawienia ma znaczenie na liście.

Wskazówka: jedna lista w Redis może pomieścić do 4 miliardów elementów.

Redis odzyskaj elementy listy

Aby pobrać elementy przechowywane na liście, używamy polecenia LRANGE, a następnie wartości początkowej i końcowej przesunięcia. W tym przypadku przesunięcie reprezentuje indeks elementu na liście.

Indeksowanie listy Redis zaczyna się od 0.

Na przykład, aby pobrać wszystkie elementy z indeksu 0, możemy uruchomić polecenie:

127.0.0.1: 6379> Lange Języki 0 -1

Przekazywanie listy rozpoczyna się przesunięcie jako 0, a ostatni przesunięcie jako -1 zwraca wszystkie elementy na liście.

Polecenie powinno zwrócić elementy na liście, jak pokazano:

1) „C ++”

2) „C”

3) „Eliksir”

4) „Ocaml”

5) „JavaScript”

6) „Python”

7) „SQL”

8) „Java”

9) „C#”

Polecenia Redis LPOP i BLPOP

Jeśli chodzi o usuwanie elementów na liście, napotkasz dwa główne polecenia:

LPOP i BLOP.

Uwaga: możesz dowiedzieć się o poleceniu LREM w tym artykule <- click here.

Polecenie LPOP usunie i zwróci pierwszy element na liście. Przykładem użycia jest jak pokazano poniżej:

127.0.0.1: 6379> Języki LPOP
„C ++”

Ponieważ polecenie LPOP zwraca faktyczną usuniętą wartość, nadaje się do śledzenia zmian w aplikacji.

Z drugiej strony polecenie BLPOP to wersja blokująca polecenie LPOP. Usuwa i zwraca pierwszy element na liście. Jednak w przeciwieństwie do polecenia LPOP, blokuje połączenie przez określony czas, dopóki nie będzie dostępna.

Rozważ przykład pokazany poniżej:

127.0.0.1: 6379> BLPOP MYKEY 10

Przekazujemy nieistniejący klucz do polecenia BLPOP w powyższym przykładzie. Określamy również czas trwania bloku jako 10 sekund. Jeśli nie ma dostępnego elementu na określonej liście po upływie, polecenie zwraca zero.

Powyższe polecenie powinno powrócić (po 10 sekundach).

127.0.0.1: 6379> BLPOP MYKEY 10
(zero)
(10.05s)

Jeśli element istnieje na określonej liście, usuwa go i zwraca go, jak pokazano:

127.0.0.1: 6379> Języki BLPOP 10
1) „Języki”
2) „C”

W takim przypadku polecenie zwraca klawisz, z którego usuwa element, a rzeczywisty element usunięty.

Nie czeka na upływy określony czas trwania.

Wniosek

Ten samouczek obejmował listy Redis i sposób korzystania z nich w bazie danych. Omówiliśmy: Tworzenie listy Redis, dodanie elementów, pobieranie elementów listy i usuwanie kluczy z listy.

Dziękuje za przeczytanie!!