パブリッシュ/サブスクライブは非常に単純なパラダイムです。ラジオ局でトークショーをしているようなものだと考えてください。それは公開です。少なくとも1人以上の人があなたのチャンネルをピックアップして、ラジオ番組(SUBSCRIBE)であなたのメッセージを聞いたり、何かをしたりすることを望んでいますが、直接人々と話しているわけではありません。 。
redis-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
「myradioshow」チャネルでメッセージを受信しているクライアントがないことに注意してください(これは応答の0です)。誰も聞いていません。次に、別のredis-cliを開き(または、もっと楽しい時間のために、友人にredis-cliを開いてサーバーに接続してもらいます)、チャネルにサブスクライブします:
redis 127.0.0.1:6379> SUBSCRIBE myradioshow
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "myradioshow"
3) (integer) 1
元のredis-cliに戻り、ショーを続行します:
redis 127.0.0.1:6379> PUBLISH myradioshow "Next caller gets a free loaf of bread!"
(integer) 1
最後に「1」があることに注意してください。あなたにはリスナーがいます!魔法のように、SUBSCRIBE-dターミナルで:
1) "message"
2) "myradioshow"
3) "Next caller gets a free loaf of bread!"
もちろん、実際には、サーバーでイベントを発生させたり、ある種のタスクやジョブを実行したりするなど、ズボンのないライフスタイルについてクライアントに伝えるよりも便利なことをしたいと思うでしょう。多分そうではありません! :)