RPOPLPUSH

Redis Developer Course Redis Technical Support Redis Enterprise Server

리스트 오른쪽에서 데이터를 꺼내서 왼쪽에 넣는다.

사용법은 rpoplpush src_key dest_key 이다.
결과는 rpop + lpush와 같으나 이 명령은 원자적으로 동작한다.

Example: Reliable queue

명령>lpush src_key msg_1 msg_2 msg_3
결과>3
명령>lpush dest_key msg_A msg_B msg_C
결과>3
명령>rpoplpush src_key dest_key
결과>msg_1
명령>lrange src_key 0 -1
결과>0) msg_3
1) msg_2
명령>lrange dest_key 0 -1
결과>0) msg_1
1) msg_C
2) msg_B
3) msg_A

애니메이션 보기



Circular list

src_key와 dest_key를 같은 key로 지정할 수 있다.
이렇게 하면 환형 리스트가 된다.

Example: Circular list

명령>lpush key msg_1 msg_2 msg_3
결과>3
명령>lrange key 0 -1
결과>0) msg_3
1) msg_2
2) msg_1
명령>rpoplpush key key
결과>msg_1
명령>lrange key 0 -1
결과>0) msg_1
1) msg_3
2) msg_2

애니메이션 보기



명령문

RPOPLPUSH source destination

  • 이 명령은 version 1.2.0 부터 사용할 수 있다.
  • 논리적 처리 소요시간은 O(1)입니다.
관련 명령 RPOP, LPUSH
Clients for Java Jedis, Lettuce, Redisson
Clients for C Hiredis

<< LMOVE RPOPLPUSH LPUSHX >>

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

패턴으로 값을 조회하고 삭제할 수 있어요.
리스트에서 "lls mylist user*" 이렇게 조회할 수 있구요.
user가 들어간 값들을 삭제하려면 "lrm mylist user*" 이렇게 하면 됩니다.
List에서는 LLS, LRM, Set에서는 SLS, SRM, ZSet에서는 ZLS, ZRM, Hash에서는 HLS, HRM 을 사용하면 됩니다.
게다가 LS는 소트 기능까지 있습니다. 한번 사용해 보세요. ^^
궁금하신 사항이 있으면 여기로 redisgate@gmail.com 메일 주세요.
 
close
IP를 기반으로 보여집니다.