php redis鍵名模糊查詢

生產環境下最好不要有keys來模糊查詢,影響效率,且可能讓服務器崩掉,可用scan代替。

//redis模糊查詢
    public  function dcscan($pattern, $count = 1000){
        $redis = new \myredis\Datasource();
        $myredis = $redis::getRedis('instance1');
        $ret = [];
        $iterator = 0;
        while (true) {
            $result = $myredis->rawCommand("scan", $iterator, 'match', $pattern, 'count', $count);
            if ($result === false) {
                break;
            }
            $ret = array_merge($ret, $result[1]);
            $iterator = $result[0];
            if($result[0] == 0){
                break;
            }
        }

        return $ret;
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章