Computer >> 컴퓨터 >  >> 프로그램 작성 >> Redis

목록의 마지막 요소를 제거하고 반환하는 방법 – Redis RPOP | 브팝

이 가이드에서는 redis 데이터 저장소의 키에 저장된 목록 값의 마지막 요소를 제거하고 반환하는 방법에 대해 알아봅니다. 이를 위해 redis RPOP를 사용합니다. 및 BRPOP 명령.

RPOP 명령

이 명령은 지정된 키에 저장된 목록 값의 마지막 요소를 제거하고 반환하는 데 사용됩니다. 키가 존재하지 않고 오류가 반환되고 키가 있지만 키에 저장된 값이 목록 데이터 유형이 아닌 경우 Nil이 반환됩니다. Redis RPOP 명령의 구문은 다음과 같습니다.-

구문:-

redis 호스트:post> RPOP 

출력:-

- (문자열) 응답, 목록의 마지막 요소를 나타냅니다.- (nil), 키가 존재하지 않는 경우.- 오류, 키가 존재하고 키에 저장된 값이 목록이 아닌 경우.

예:-

목록의 마지막 요소를 제거하고 반환하는 방법 – Redis RPOP | 브팝

BRPOP 명령

이 명령은 지정된 목록에서 팝할 요소가 없을 때 작업을 차단하기 때문에 RPOP 명령의 차단 버전입니다. 즉, 지정된 목록이 모두 비어 있거나 지정된 키가 모두 없을 때 작업을 차단합니다.

비어 있지 않은 목록 값의 마지막 요소를 제거하고 반환하며 지정된 키를 왼쪽에서 오른쪽으로 검사합니다. 예를 들어 명령 BRPOP list1 list2 list3 0인 경우 list1 키가 실행됩니다. 존재하지 않음(빈 목록으로 간주), list2 빈 목록이고 list3입니다. 세 개의 요소가 포함된 다음 list3에 저장된 목록 값의 마지막 요소를 제거하고 반환합니다. list1에서 list3까지 확인할 때 비어 있지 않은 첫 번째 목록이므로

지정된 키가 없거나 지정된 키의 목록 값이 비어 있는 경우 BRPOP는 다른 클라이언트가 LPUSH, RPUSH, LINSERT와 같은 명령을 실행하여 지정된 키 중 하나에 요소를 삽입할 때까지 작업을 차단합니다. 목록 값 중 하나에 새 요소가 있으면 클라이언트는 해당 요소를 차단 해제하는 키의 이름과 팝된 값을 반환합니다.

BRPOP로 인해 클라이언트가 차단되고 0이 아닌 시간 제한이 지정되면 지정된 시간 제한이 만료되면 지정된 키 중 하나 이상에 대한 삽입 작업 없이 클라이언트가 nil 값을 반환하는 차단을 해제합니다.

timeout 인수는 차단할 최대 시간(초)을 나타내는 정수 값입니다. 0초의 제한 시간을 사용하여 무기한 차단할 수 있습니다.

Redis BRPOP 명령의 구문은 다음과 같습니다.-

구문:-

redis 호스트:post> BRPOP  [  ] 

출력:-

- (배열) 응답, 첫 번째 요소는 팝된 요소 키의 이름이고 두 번째 요소는 팝된 요소 자체인 두 개의 요소가 반환됩니다.- (nil), 어떤 요소도 팝될 수 없고 타임아웃이 만료된 경우. 

예:-

목록의 마지막 요소를 제거하고 반환하는 방법 – Redis RPOP | 브팝

참조:-

  1. RPOP 명령 문서
  2. BRPOP 명령 문서

redis 데이터 저장소에 저장된 목록 값의 마지막 요소를 제거하고 반환하는 방법은 여기까지입니다. 마음에 드셨다면 댓글 섹션에 의견을 공유하고 다른 사람들과도 공유해 주세요.

<- 목록 명령