使用memcache,redis抛出异常:连接时读取错误

时间:2015-04-14 17:01:25

标签: php redis

在我的项目中,我想在使用memcached时使用redis(它是一个旧系统,我不想直接替换memcached)。但是当我尝试将元素推入redis列表时,我遇到了异常"读取连接错误"。我发现如果在连接redis之前连接memcached,它总是抛出这个异常,但是首先连接redis可以避免这个问题。

环境: Nginx + php-fpm + PHP 5.3.3 + Redis 2.8.19

使用connect而不是pconnect可以修复此异常。但我更喜欢使用pconnect。 这是我的代码:

$memCache = new Memcached ('client');
$memCache->addServer('127.0.0.1', '8022');

$memCache->set ('mcKey', 1);
echo $memCache->get('mcKey');

$redis = new Redis();
$redis->pconnect('127.0.0.1', '6379', 1000);
$redis->setOption(Redis::OPT_READ_TIMEOUT, -1);

try {
    $redis->lPush('mykey', 1, 2);
    echo 'OK';
} catch (Exception $e) {
    echo $e->getMessage();
}

这里的代码有问题吗?

0 个答案:

没有答案