BLMOVE

레디스 개발자 교육 신청 레디스 정기점검/기술지원
Redis Technical Support
레디스 엔터프라이즈 서버
Redis Enterprise Server

리스트간 데이터 이동 - 대기

소스(source) 리스트에서 데이터(element)를 꺼내서 목적(destination) 리스트에 넣는다.
소스 리스트에서 데이터를 꺼낼 때 left/right를 지정하고, 목적 리스트에 데이터를 넣을 때 left/right를 지정한다. LEFT는 리스트의 first 또는 head로 해석할 수 있고, RIGHT는 리스트의 last 또는 tail로 해석할 수 있다.
다른 대기(blocking) 명령과 같이 데이터가 없으면 들어올 때까지(timeout) 기다린다.

Example: Reliable queue

명령>lpush src_key msg_1 msg_2 msg_3
결과>3
명령>lpush dest_key msg_A msg_B msg_C
결과>3
명령>blmove src_key dest_key left left 5
결과>msg_3
명령>lrange src_key 0 -1
결과> 1) "msg_2"
2) "msg_1"
명령>lrange dest_key 0 -1
결과> 1) "msg_3"
2) "msg_C"
3) "msg_B"
4) "msg_A"


명령문

BLMOVE source destination LEFT|RIGHT LEFT|RIGHT timeout

  • 이 명령은 version 6.2.0 부터 사용할 수 있다.
  • 논리적 처리 소요시간은 O(1)입니다.
관련 명령 LMOVE

<< BRPOP BLMOVE BRPOPLPUSH >>

Email 답글이 올라오면 이메일로 알려드리겠습니다.