在排查redis耗時的過程中發現大量的exists命令耗時很長。很意外,印象中感覺這個這個命令應該是很快執行完的。隨後了解到
1. redis中del命令的時間複雜度對於字串和雜湊值而言是o(1),而對於list、set和sorted set而言則是o(n) (這裡的 n 是集合中資料項的數目)。所以對於大集合key,del命令會很耗時。
2. 在exists命令處理函式中實現了清除過期key的主動策略,會先呼叫 expireifneeded 函式檢查要訪問的 key 是否過期,如果過期就delete掉這個key。所以對於大集合,exists命令也有可能會很耗時。
Redis常用的命令
啟動 redis 服務 src redis server或者src redis server redis.conf src redis server redis.conf 1 log.log 2 errlog.log 1為標準輸出,2為錯誤輸出 將 redis 作為 linux 服務隨機啟動 vi ...
redis 命令的使用
redis 相關設定,redis命令可以用tab鍵補全 root elk node1 redis cli h 192.168.122.188 192.168.122.188 6379 set mykey abc 定義乙個鍵值對 ok192.168.122.188 6379 get mykey 獲取鍵...
Redis的高階命令
返回滿足所有鍵key 可以模糊匹配 exists是否存在指定的key expire設定某個key的過期時間,使用ttl檢視剩餘時間 persist取消過期時間 select選擇資料庫 資料庫為0到15 一共16個資料庫 預設進入的是0資料庫 move key 資料庫下標 將當前資料中的key轉移到其...