本文共 1089 字,大约阅读时间需要 3 分钟。
1.
生产者:
pconnect('10.10.10.252',6379);$redis->auth('rds!2016!FD');for($i=1;$i<=10;$i++){ //$redis->publish('chan-1', 'hello, world!'.$i); // send message to channel 1. //$redis->publish('chan-2', 'hello, world2!'.$i); // send message to channel 2. $key = "key1"; $msg = "hello world - ".$i; $redis->lpush($key, $msg);} print "\n"; $redis->close(); //redisDao.lpush(key, msg); ?>消费者:(多个,争抢模式)
pconnect('10.10.10.252',6379);$redis->auth('rds!2016!FD');$key = "key1";while (true) { //echo 1; // block invoke $msgs = $redis->brpop($key,2); if ( $msgs == null) continue; var_dump($msgs); }?>
2.考虑到失败情况: 消费者(保存到list key2,如果其他的操作成功,从key2中删除 添加的数据。)
pconnect('10.10.10.252',6379);$redis->auth('rds!2016!FD');/*$key = "key1";while (true) { //echo 1; // block invoke $msgs = $redis->brpop($key,2); if ( $msgs == null) continue; var_dump($msgs); } */ while(true){ $data = $redis->brpoplpush('key1','key2', 30); var_dump($data); //data1 $dd = $redis->lrange('key2',0,-1); var_dump($dd); //some process $redis->lrem('key2',$data); } ?>
转载地址:http://qxdli.baihongyu.com/