티스토리 뷰

반응형

리스트


레디스의 리스트는 자료구조 중 LinkedList의 쓰임새와 동일하다. ※LinkedList를 알아보자(참고만 하세요)


실제로는 사용자의 최신 글 등을 출력할 때 사용된다고 한다.


REDIS 리스트는 처음 또는 끝에서부터 데이터를 추가한다. 또한, 리스트의 VALUE들은 항상 왼쪽(L)에서 오른쪽(R)으로 접근한다.


주요 사용 커맨드는


1. LPUSH : KEY에 대한 VALUE 들을 리스트의 처음부터 추가 함. 인덱스는 0, 1, 2, 3, ... 21억 까지. VALUE의 개수를 리턴한다.


2. RPUSH : KEY에 대한 VALUE 들을 리스트의 끝에서부터 추가 함. 인덱스는 -1, -2, -3, ... -21억 까지. VALUE의 개수를 리턴한다.


3. LLEN : KEY에 대한 리스트의 길이(VALUE의 개수)를 리턴


4. LINDEX : 해당 리스트의 인덱스에 해당하는 VALUE를 리턴한다.


5. LRANGE : 해당 리스트의 인덱스 범위에 있는 모든 VALUE를 배열로 리턴한다.



예)









6. LPOP : KEY에 대한 리스트의 첫번째 VALUE를 삭제함과 동시에 그 값을 리턴한다.


7. RPOP : KEY에 대한 리스트의 마지막 VALUE를 삭제함과 동시에 그 값을 리턴한다.


8. BLPOP : LPOP과 기능은 동일하나 블로킹 기능이 있다. 해당 VALUE 값이 없으면 생길 때까지 기다린다.

※블로킹, 넌블로킹 그리고 동기와 비동기에 대해서 공부하려면 다음을 참조하자


9. BRPOP : RPOP과 기능은 동일하나 마찬가지로 블로킹 기능이 있다. 해당 VALUE 값이 없으면 생길 때까지 기다린다.


10. RPOPLPUSH : RPOP+LPUSH 기능이 합쳐진 커맨드로서, 매개변수로 두 개의 KEY를 필요로 한다. 

이 때 하나의 KEY(srckey)는 하나의 리스트에서 RPOP을 하기 위한 KEY이며, 다른 하나의 KEY(dstkey)는 RPOP으로 얻은 VALUE를 다른 리스트에서 LPUSH 기능을 수행하기 위한 KEY이다. 이는 큐잉을 할 때 신뢰성을 향상시키기 위한 방법이다.

※역시 BRPOPLPUSH 메소드가 존재하며 블로킹 기능을 제공한다.

반응형

'개발일지 > NOSQL' 카테고리의 다른 글

PhpStorm에서 Phpredis 기본 사용법(Redis 사용법)  (0) 2018.05.26
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함