理論遲點再補,先上**。
直接上**:
demopub.php(發布者**)
<?php
$redis = new redis();
$redis->connect('localhost',6379);
$redis->publish('mcs','麒麟之才');
demosub.php(訂閱者**)
<?php
$redis = new redis();
$redis->connect('127.0.0.1',6379);
//$redis->setoption(redis::opt_read_timeout, -1);//設定不超時,執行時設定redis配置,只有當前執行指令碼生效。
$res =$redis->subscribe(array('mcs'),'callback');
function callback($instance,$channelname,$message){
var_dump(func_num_args());
var_dump(func_get_args());
var_dump($instance,$channelname,$message);
echo $channelname,'==>',$message,php_eol;
在cli執行訂閱者**,然後另開乙個終端執行發布者**,觀察效果。
注意:redis在發布訂閱模式中,其他redis命令會執行失敗。
備註:本文就是為了給自己做下記錄,如有不恰當之處,請各路大牛指出,好讓後輩們學習。
Redis發布訂閱模式
publish subscribe 發布訂閱模式的原理 包含兩個角色,乙個是發布者,乙個是訂閱者 訂閱者可以訂閱乙個或者多個頻道channel 發布者可以向指定頻道發布資訊 通過publish發布訊息 publish channel message publish channel1.1 maizie...
redis發布訂閱模式
發布 訂閱 模式包含兩種角色,分別是發布者和訂閱者。訂閱者可以訂閱乙個或者多個頻道 channel 而發布者可以向指定的頻道 channel 傳送訊息,所有訂閱此頻道的訂閱者都會收到此訊息。此模式允許生產者只生產一次訊息,由中介軟體負責將訊息複製到多個訊息佇列,每個訊息佇列由對應的消費組消費。模糊匹...
redis發布訂閱模式
127.0 0.1 6379 subscribe tuonas 訂閱了乙個tuonas的頻道 subscribe tuonas 1127.0 0.1 6379 publish tuonas hello 向tuonas這個頻道發布一條hello的訊息 integer 1127.0 0.1 6379 s...