php redis stream消息队列操作大全代码
代码语言:phpcli
所属分类:其他
代码描述:php redis stream消息队列操作大全代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<?php //连接reids $redis = new Redis(); $redis->connect('127.0.0.1', 6379); //xadd:追加消息 //xdel:删除消息,删除标志位,不影响消息总长度 //xrange:消息列表,过滤已删除的消息 //xlen:消息长度 //del: 删除所有消息 $redis->rawCommand('del', 'bfw'); // 星号表示自动生成id,后面参数key,value $redis->rawCommand('xadd', 'bfw', '*', 'name', 'user1', 'age', '20'); $redis->rawCommand('xadd', 'bfw', '*', 'name', 'user2', 'age', '18'); $redis->rawCommand('xadd', 'bfw', '*', 'name', 'user3', 'age', '19'); $redis->rawCommand('xadd', 'bfw', '*', 'name', 'user4', 'age', '19'); //maxlen 定长长度,将老消息干掉,确保链表不会超过指定长度 $redis->rawCommand('xadd', 'bfw', 'maxlen', '3', '*', 'name', 'user5', 'age', '19'); $res = $redis->rawCommand('xlen', 'bfw'); echo "<pre>"; var_dump($res); echo '\n'; // -最小值 +最大值 $res = $redis->rawCommand('xrange', 'bfw', '-', '+'); print_r($res); echo '\n'; $id = $res[1][0]; // 指定最小消息列表 $res = $redis->rawCommand('xrange', 'bfw', $id, '+'); // var_dump($res); // echo '\n'; // 指定最大消息列表 $res = $redis->rawCommand('xrange', 'bfw', '-', $id); // var_dump($res); // echo '\n'; // 指定最大消息列表 $res = $redis->rawCommand('xrange', 'bfw', '-', $id); // var_dump($res); // echo '\n'; /************************独立消费************************/ //从stream中头部读取两条消息 $res = $redis->rawCommand('xread', 'count', '2', 'streams', 'bfw', '0-0'); // var_dump($res); // echo '\n'; //从尾部读取一条消息,这里不会返回任何消息 $res = $redis->rawCommand('xread', 'count', '1', 'streams', 'bfw', '$'); // var_dump($res); // echo '\n'; //block 0 表示永久阻塞,直到消息.........完整代码请登录后点击上方下载按钮下载查看
网友评论0