Cloud & NoSQL & Middleware/Redis
Redis Pub/Sub Model
swifty
2018. 7. 1. 18:23
Pub/Sub Model
Redis는 JMS나 IBM MQ 같은 메시징에 활용할 수 있는데 1:1 형태의 Queue뿐만 아니라 1:N 형태의 Publish/Subscribe 메시징도 지원한다(Publish/Subscribe 구조에서 사용되는 Queue를 일반적으로 Topic이라고 한다). 하나의 클라이언트가 메시지를 Publish하면 이 Topic에 연결되어 있는 다수의 클라이언트가 메시지를 받을 수 있는 구조이다(Publish/Subscribe 형태의 메시징에 대해서는 http://en.wikipedia.org/wiki/ Pub/sub를 참고하길 바란다).
재미있는 것 중에 하나는 일반적인 Pub/Sub 시스템의 경우 Subscribe하는 하나의 Topic에서만 Subscribe하는데 반해, Redis에서는 pattern matching을 통해 다수의 Topic에서 메시지를 Subscribe할 수 있다. 예를 들어 topic 이름이 music.pop, music.classic이라는 2개의 Topic이 있을 때, “PSUBSCRIBE music.*”라고 하면 2개의 Topic에서 동시에 메시지를 Subscribe할 수 있다.
출처: https://www.kdata.or.kr/info/info_04_view.html?field=&keyword=&type=techreport&page=38&dbnum=176019&mode=detail&type=techreport