目的是為了實現(xiàn)多進程推送實現(xiàn)廣播,不想使用channel感覺有點復雜
用 workerman的redis組件吧,它是異步非阻塞的,適合用來監(jiān)聽事件。
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發(fā)布事件。