PHP+redis+常驻进程处理队列数据
//将数据插入redis队列public function ruDui(){ $codeObj = new DataIntegrationCode(); $this->redis = new \Redis(); //连接redis $this->redis->connect($codeObj::REDIS_HOST, $codeObj::REDIS_PORT); $this->redis->auth($codeObj::REDIS_AUTH); $this->redis->select(2); //入队 $this->redis->rpush("unit_Que",'**********');}
2、数据处理,出队操作:代码如下 :
//出队操作 public function chuDui(){ set_time_limit(0); ini_set('default_socket_timeout', -1); // 不超时 $queue = 'unit_Que'; $codeObj = new DataIntegrationCode(); $this->redis = new \Redis(); $this->redis->connect($codeObj::REDIS_HOST, $codeObj::REDIS_PORT); $this->redis->auth($codeObj::REDIS_AUTH); $this->redis->select(2); while(true) { $r = $this->redis->brPop($queue, 0); 在这里进行数据操作} }
3、linux系统设置常驻进程,命令如下: