几天前碰到这么一个问题,php的代码不变,请求的参数固定。但是,
第一次请求,返回数据正常;
第二次请求,返回数据不对;
第三次请求,返回数据不对,于第二次请求返回的数据一致
第四次请求,返回数据正确了,且与第一次请求返回数据一致
问题:php请求redis的代码是固定的,请求的参数也是固定的,但是返回数据也不同。
PHP的代码如下:
$redis = new Redis ();
$redis->pconnect (C('REDIS_HOST'),C('REDIS_PORT'));
$islive = $redis->hget('anchor_online',$channelid );
$tmp = json_decode($islive,true);
最后,把代码里的 pconnect, 改成 connect. 问题解决.
改完后的代码如下:
$redis = new Redis ();
$redis->connect (C('REDIS_HOST'),C('REDIS_PORT'));
$islive = $redis->hget('anchor_online',$channelid );
$tmp = json_decode($islive,true);
多次请求,返回的数据一致,并且是正确的。
也许还可以用的其他解决方法, 来让 pconnect 工作正常(没试):