redis 实例化以及ping 的操作

PHP 投稿 22400 0 评论

redis 实例化以及ping 的操作

一旦开启一个不关闭的脚本,就需要一个ping函数去不断的校验的链接。下面是一个检验当前redis链接是否有效的方法。

function getRedis() {
    global $redis;

    if (empty($redis) || !($redis instanceof Redis)) {
        global $redis_config;
        $redis = new Redis();
        $redis->connect($redis_config['host'], $redis_config['port']);

        return $redis;
    }

    if (!method_exists($redis, 'ping')) {
        global $redis_config;
        $redis = new Redis();
        $redis->connect($redis_config['host'], $redis_config['port']);

        return $redis;
    }

    $response = $redis->ping();

    if ($response != '+PONG') {
        global $redis_config;
        $redis = new Redis();
        $redis->connect($redis_config['host'], $redis_config['port']);

        return $redis;
    }

    return $redis;
}

编程笔记 » redis 实例化以及ping 的操作

赞同 (99) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽