이 튜토리얼에서는 redis-cli를 사용하여 redis 메시지 브로커 시스템에서 여러 패턴을 구독하는 방법을 배웁니다.
PSUBSCRIBE 명령
PSUBSCRIBE 명령은 이름이 지정된 패턴과 일치하는 채널에 게시되는 모든 메시지를 수신하기 위해 클라이언트를 하나 이상의 패턴에 구독하는 데 사용됩니다. 패턴은 glob 스타일로 지정됩니다. SUBSCRIBE 명령과 유사하게 클라이언트가 psubscribe 명령을 실행하면 구독된 패턴을 수신 대기하는 구독 상태로 들어갑니다. 다른 클라이언트가 구독 패턴과 이름이 일치하는 채널에 게시한 메시지는 redis에 의해 클라이언트로 푸시됩니다.
클라이언트가 구독 상태에 있을 때 SUBSCRIBE, PSUBSCRIBE, UNSUBSCRIBE, PUNSUBSCRIBE, PING 및 QUIT 명령을 제외한 다른 명령을 실행해서는 안 됩니다. redis-cli에서 클라이언트가 구독 상태가 되면 클라이언트는 다른 명령을 수락하지 않으며 Ctrl + C로만 상태를 종료할 수 있습니다.
글로브 스타일 패턴:-
- * 와일드카드 :- 공백을 포함한 0개 이상의 문자와 일치합니다. 예를 들어 foo*는 fooccc, foo, fooq와 일치합니다.
- ? 와일드카드 :- 공백을 포함한 모든 문자 중 정확히 하나와 일치합니다. 예를 들어 f?0은 fao, fbo, fco와 일치합니다.
- [목록] 와일드카드:- 목록에서 정확히 한 문자와 일치합니다. 예를 들어 f[abc]0은 fao, fbo, fco와 일치합니다.
\ 사용 특수 문자를 이스케이프합니다.
redis PSUBSCRIBE 명령의 구문은 다음과 같습니다.-
구문:-
redis host:post> PSUBSCRIBE <pattern> [ <pattern> ]
출력:-
- (array) reply of 3 elements, when PSUBSCRIBE command is executed in the client. - (array) reply of 4 elements, When message is received by the client.
푸시된 메시지 형식:-
배열 응답의 첫 번째 요소는 다음과 같습니다.-
- 구독(3개 요소) : 이는 응답에서 두 번째 요소로 제공된 패턴을 성공적으로 구독했음을 의미합니다. 세 번째 요소는 현재 구독 중인 패턴의 수를 나타냅니다.
- 메시지(4개 요소): 다른 클라이언트가 발행한 PUBLISH 명령의 결과로 수신된 메시지입니다. 두 번째 요소는 일치하는 원래 패턴이고, 세 번째 요소는 원래 채널의 이름이며, 네 번째 요소는 실제 메시지 페이로드입니다.
예:-
참조:-
- PSUBSCRIBE 명령 문서
redis psubscribe를 사용하여 redis-cli를 사용하여 redis 메시지 브로커에서 하나 이상의 패턴을 구독하는 방법은 여기까지입니다. 마음에 드셨다면 댓글 섹션에 의견을 공유하고 다른 사람들과도 공유해 주세요.