我在ubuntu14.01下用gateway調(diào)用redis,總是發(fā)生一些奇怪的問(wèn)題
圖一是在php中讀取redis的結(jié)果,圖二是在redis中的結(jié)果
而且經(jīng)常會(huì)報(bào) 'RedisException' with message 'read error on connection' ,我也修改過(guò)php.ini,redis.conf中timeout值也為0.
我直接調(diào)用$redis->connect(),則不會(huì)發(fā)生這些問(wèn)題
,源代碼如下:
<?php
use \GatewayWorker\Lib\Gateway ;
use \GatewayWorker\Lib\Store ;
class Event
{
public static function onConnect($client_id)
{
$store = Store::instance("robot") ;
$store->hSet( 'clientRBlist' , $client_id , 0 ) ;
}
public static function onMessage($client_id, $message)
{
$data = json_decode( $message ,true ) ;
if( $data == 'ROBOT' )
{
if( $data == 'REGIST' )
{
self::robRegist( $client_id , $data ) ;
}
}
}
public static function onClose($client_id)
{
$store = Store::instance("robot") ;
//$clientRB = $store->hGetAll( 'clientRBlist') ;
//print_r($clientRB) ;
echo("*****".$client_id."--");
$client_type = $store->hGet( "clientRBlist" , $client_id ) ;
echo($client_type."\n") ;
}
public function robRegist( $client_id , $data )
{
$store = Store::instance("robot") ;
$store->hSet( 'clientRBlist' , $client_id , 'ROB' ) ;
Gateway::sendToClient( $client_id , '{"infomation":"Welcome","robotconnected":1}' ) ;
}
}
請(qǐng)問(wèn)這個(gè)該怎么辦?
在程序中取得的并非正確的值,請(qǐng)注意client_id為470時(shí),redis中為ROB,而程序中取得的是+PONG,顯然有問(wèn)題