Nou Generator de prompt AI — scrie prompturi mai bune pentru ChatGPT, Claude și Gemini →

LPOP / RPOP în Redis & In-Memory Data Store

Scoate și întoarce primul (LPOP) sau ultimul (RPOP) element dintr-o listă; cu count, mai multe deodată.

Sintaxă comandă
LPOP key [count]
RPOP key [count]

Ce face LPOP / RPOP

LPOP elimină și întoarce elementul din stânga listei, iar RPOP pe cel din dreapta. Combinat cu RPUSH, LPOP face o coadă FIFO (primul venit, primul servit); combinat cu LPUSH, face o stivă.

Din Redis 6.2.0 poți da un count ca să scoți mai multe elemente deodată; atunci răspunsul este o listă. Când lista rămâne goală, cheia este ștearsă.

Parametri

Parametru Descriere
key Cheia listei.
count Câte elemente să scoată (Redis 6.2+).

Ce returnează

Fără count: elementul sau (nil) dacă lista nu există. Cu count: o listă cu elementele scoase.

Exemple

Exemplul 1: Procesarea unei cozi în ordine

Primul element adăugat este primul scos.

RPUSH coada:email ana@exemplu.ro dan@exemplu.ro ioana@exemplu.ro
LPOP coada:email
LPOP coada:email 2
LPOP coada:email

Ieșire în redis-cli

127.0.0.1:6379> RPUSH coada:email ana@exemplu.ro dan@exemplu.ro ioana@exemplu.ro
(integer) 3
127.0.0.1:6379> LPOP coada:email
"ana@exemplu.ro"
127.0.0.1:6379> LPOP coada:email 2
1) "dan@exemplu.ro"
2) "ioana@exemplu.ro"
127.0.0.1:6379> LPOP coada:email
(nil)

Exemplul 2: Stivă de acțiuni pentru „Anulează”

RPOP pe o listă construită cu RPUSH întoarce ultima acțiune.

RPUSH istoric:ana adauga-text sterge-rand bold
RPOP istoric:ana

Ieșire în redis-cli

127.0.0.1:6379> RPUSH istoric:ana adauga-text sterge-rand bold
(integer) 3
127.0.0.1:6379> RPOP istoric:ana
"bold"

Greșeli frecvente

  • LPOP nu așteaptă: pe o listă goală întoarce imediat (nil). Pentru workeri care așteaptă mesaje folosește BLPOP.
  • Dacă workerul cade după LPOP, mesajul se pierde. Pentru cozi sigure folosește LMOVE într-o listă de „în lucru” sau Redis Streams.

Comenzi înrudite

  • LPUSH / RPUSH: Adaugă elemente la începutul (LPUSH) sau la sfârșitul (RPUSH) unei liste, creând lista dacă lipsește.
  • BLPOP / BRPOP: Scoate primul element dintr-o listă; dacă toate listele sunt goale, așteaptă (blochează) până apare un element sau expiră timpul.
  • LMOVE / BLMOVE: Mută atomic un element dintr-o listă în alta, alegând capătul din care scoate și capătul în care pune.
  • LLEN: Întoarce numărul de elemente dintr-o listă; 0 dacă lista nu există.
Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: LPOP / RPOP

Ai o nelămurire despre utilizarea comenzii LPOP / RPOP sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.