0

我连接了slave redis,多么愚蠢的错误-_-!!!

需要学习的是,在进入客户端代码之前,我们应该始终检查服务器状态。

我正在尝试在 php 应用程序中使用 redis,作为谷歌的结果,我选择了 phpredis。我建立了连接,通过 成功获取了redis信息$this->_redis->info(),但是没有设置任何值。以下是一些软件信息:

php : 5.5.19 x64 thread safe

framework : CodeIgniter(sorry I don't know where to get version info)

redis : 2.8.15

phpredis : php_redis-2.2.7-5.5-ts-vc11-x64

一个辅助类包含连接配置和功能

class Redis_Module{
    private $_redis;
    function __construct(){     
        $this->ci = & get_instance();
        $redis_connection_array = $this->ci->config->item('redis_connection_array');
        $this->_redis = new Redis();
        $this->_redis->connect($redis_connection_array['host'],$redis_connection_array['port']);
        $this->_redis->auth($redis_connection_array['password']);
    }
    function info(){
        return $this->_redis->info();
    }
    function get($key){
        return $this->_redis->get($key);
    }
    function set($key, $value){
        return $this->_redis->set($key, $value);
    }
}

当我调用这3个函数时,可以成功获取redis信息,但是set('foo', 'bar')和get('foo')函数都返回false,尤其是get('an_existing_key')返回redis缓存的正确信息.

$redis_client = new Redis_Module();
$msg1 = $redis_client->set('foo', 'bar');
$msg2 = $redis_client->get("foo");
$msg3 = $redis_client->get("an_existing_key");
$msg4 = $redis_client->info();

我不熟悉 php,所以我错过了任何关键配置或其他任何东西吗?

4

0 回答 0