php 實現redis 訂閱發布

2021-08-24 23:04:59 字數 1019 閱讀 3920

redis 發布訂閱(pub/sub)是一種訊息通訊模式:傳送者(pub)傳送訊息,訂閱者(sub)接收訊息。

這個可以理解為 我關注了你 你發了資訊我就可以立馬收的到

以下是我理解的幾個場景當然還有更多的場景

2.1 典型的網頁上的訊息可以做到實時通知

2.2 訂單下單以後 通過redis訂閱實時通知庫存改變 

2.3 介面需要做一些比如傳送郵件 寫日誌等功能的時候可以運用到redis訂閱了 這樣會加快介面返回時間

知道了什麼是redis訂閱 並且知道redis訂閱的場景 接下來就是擼**了

3.1 cli.php

cli.php 

//這個為訂閱端的** 主要注意的是這個**放在cli下執行 php cli.php

啟動以後接下來我們來個發布端的**

3.2 發布端的**

pub.php 

//這個**可以放在普通網頁下執行

<?php

$redis = new redis();

$redis->connect('127.0.0.1', 6379, 3600);

$redis->auth('123456'); //設定密碼

$message = '測試一下';

$ret=$redis->publish('test',$message);

執行上面的**

得到結果

到這裡php redis訂閱發布成功

其實總體的還是比較簡單的

當然這些**在實際使用過程中還是可以優化的比如cli.php

裡面可以考慮使用swoole進行常駐程序而不是死迴圈 

PHP操作Redis訂閱 發布

redis subscribe 訂閱 subscribe.php 1 2header content type text html charset utf 8 3 redis訂閱頻道 subscribe 4 redis new redis 5 redis connect localhost 6379...

Java實現Redis發布訂閱

jedis使用指南 簡介 redis提供了基於 發布 訂閱 模式的訊息機制,此種模式下,訊息發布者和訂閱者不進行直接通訊,發布者客戶端向指定的頻道 channel 發布訊息,訂閱該頻道的每個客戶端都可以收到該訊息 頻道沒有 建立 的概念,可以直接訂閱 亦可直接發布訊息 下圖展示了頻道 channel...

Redis發布訂閱模式實現

redisutil工具類 public class redisutil 發布訊息 public static void publish string channel,string message 訂閱訊息 public static void subscribe jedispubsub jedisp...