복붙노트

[REDIS] 무엇 레디 스의 pubsub이며 어떻게 그것을 사용합니까?

REDIS

무엇 레디 스의 pubsub이며 어떻게 그것을 사용합니까?

누군가가 PubSub가 무엇인지 그리고 (내 대답에서 코멘트에서) 채널을 만드는 방법을 나에게 물었다 나는 redis.io => http://redis.io/topics/pubsub의 기사에 그를 지적했다. 나는 그것이 매우 분명하다 생각하지만, 누군가가 더 나은 설명이 있는지 궁금입니다. 이상적으로, 레디 스-CLI를 사용하여 명확하게 설명합니다.

해결법

  1. ==============================

    1.구독 / 게시하는 것은 아주 간단 패러다임이다. 당신이 라디오 방송국의 토크쇼를 실행하는 것처럼 생각하십시오. 그의는 게시 할 수 있습니다. 당신은 적어도 하나 또는 그 이상의 사람들이 라디오 쇼 (구독)에 메시지를 청취 할 채널을 선택하고 어쩌면 몇 가지 물건을 할 것입니다 희망하고 있지만 직접 사람에게 이야기하지 않고 있습니다.

    구독 / 게시하는 것은 아주 간단 패러다임이다. 당신이 라디오 방송국의 토크쇼를 실행하는 것처럼 생각하십시오. 그의는 게시 할 수 있습니다. 당신은 적어도 하나 또는 그 이상의 사람들이 라디오 쇼 (구독)에 메시지를 청취 할 채널을 선택하고 어쩌면 몇 가지 물건을 할 것입니다 희망하고 있지만 직접 사람에게 이야기하지 않고 있습니다.

    하자가 레디 스-CLI와 재미 좀!

    redis 127.0.0.1:6379> PUBLISH myradioshow "Good morning everyone!"
    (integer) 0
    redis 127.0.0.1:6379> PUBLISH myradioshow "How ya'll doin tonight?"
    (integer) 0
    redis 127.0.0.1:6379> PUBLISH myradioshow "Hello? Is anyone listening? I'm not wearing pants."
    (integer) 0
    

    공지 사항 (응답에 0이다) 당신의 "myradioshow"채널의 메시지를 받기 고객이 없습니다. 아무도 듣고되지 않습니다. 이제, 채널을 구독 (더 재미 시간이 친구를 자신의 레디 스-CLI를 열고 서버에 연결 한 또는) 다른 레디 스-CLI를 엽니 다

    redis 127.0.0.1:6379> SUBSCRIBE myradioshow
    Reading messages... (press Ctrl-C to quit)
    1) "subscribe"
    2) "myradioshow"
    3) (integer) 1
    

    원래 레디 스-CLI로 이동하여 공연을 계속 :

    redis 127.0.0.1:6379> PUBLISH myradioshow "Next caller gets a free loaf of bread!"
    (integer) 1
    

    공지 사항이 "1"끝? 당신은 청취자가! 마법처럼, 당신의 구독-거라고 터미널 :

    1) "message"
    2) "myradioshow"
    3) "Next caller gets a free loaf of bread!"
    

    물론, 현실에서, 당신은 아마 당신의 바지가없는 라이프 스타일, 같은 서버에서 이벤트를 발사하거나 작업 / 작업의 어떤 종류를 실행하는 것과 대해 고객에게 이야기보다 더 유용한 물건을 수행 할 것입니다. 어쩌면 아니지만! :)

  2. from https://stackoverflow.com/questions/6487394/what-is-redis-pubsub-and-how-do-i-use-it by cc-by-sa and MIT license