目的是为了实现多进程推送实现广播,不想使用channel感觉有点复杂
用 workerman的redis组件吧,它是异步非阻塞的,适合用来监听事件。 http://doc.workerman.net/components/workerman-redis.html
代码类似:
$worker = new Worker(); $worker->onWorkerStart = function () { $redis = new Client('redis://127.0.0.1:6379'); $redis->subscribe(['news', 'blog'], function ($channel, $message) { echo "$channel, $message"; }); };
这样你可以在任意项目(php项目、go项目、java项目等等)中通过redis->publish()给workerman发布事件。
redis->publish()
用 workerman的redis组件吧,它是异步非阻塞的,适合用来监听事件。
http://doc.workerman.net/components/workerman-redis.html
代码类似:
这样你可以在任意项目(php项目、go项目、java项目等等)中通过
redis->publish()
给workerman发布事件。