欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Redis Pub/Sub 管理

程序员文章站 2024-02-03 20:18:40
...

学习redis Pub/Sub管理,php后台一个简单的实现,实现连接不断开,监听所有订阅者发送过来的消息。

直接在服务端运行 php redis.php 或者 在后台运行 nohup php redis.php &

<?php
ini_set('default_socket_timeout', -1);  //连接不超时,不然就会出现read error connection 错误
set_time_limit(0);//设置运行不超时
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
while (true) {
	##回调操作,处理相关业务逻辑
    function callback($instance, $chan, $msg)
    {
        file_put_contents('message.txt', $chan . $msg . PHP_EOL, 8);
        echo $chan . $msg;
    }
    $redis->subscribe(['test'], 'callback');//第一个参数监听对象,第二个参数是回调,专门用于处理业务逻辑
}

客户端推送消息操作

Redis Pub/Sub 管理

php程序里面这样写,实现消息推送 php push.php hello,world

<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$redis->publish('test', $argv[1]);

运行效果如下

Redis Pub/Sub 管理