Redis(3)常用維護操作

Redis

Redis(1)安裝 & 配置

Redis(2)基本鍵值操作

Redis(3)常用維護操作

Redis(4)客戶端連接:Java

Spring 集成 Reids(Spring-data-redis)



Redis 連接密碼設置

可以爲一個 redis-server 實例設置終端密碼,設置了密碼後,終端必須通過密碼驗證纔可以連接 redis;
127.0.0.1:6379> config get requriepass   # 獲取當前驗證密碼,默認密碼爲空
1) "requirepass"
2) "".
127.0.0.1:6379> config set requirepass "assad"   # 設置驗證密碼爲 "assad"
OK
之後登陸終端必須使用密碼纔可以登陸
 
assad@DESKTOP-assad:/etc/redis$ redis-cli
127.0.0.1:6379> auth "assad"
OK

當然也可以直接在 redis.conf 配置文件中修改 requirepass 變量;



Redis 數據備份和恢復

redis 支持數據的備份和恢復,redis的數據庫保存爲 dir 變量指定的 dump.rdb 中,可以將數據備份到磁盤中,可以從磁盤中恢復數據庫;
備份當前數據
 
127.0.0.1:6379 > save     # 備份數據
127.0.0.1:6379 > bgsave   # 備份數據(後臺執行)
當前數據會被備份到 dir 變量指定的位置
恢復數據
如果到恢復數據,只需要將備份的 dump.rdb 移動到 redis dir 變量指定的位置,重新啓動 redis 即可;



Redis 事務提交

redis 中的每一個指令操作都具有原子性,同樣支持將一系列的操作進行原子性封裝,使用 multi 指令開啓事務,exec 提交事務,一個簡單的示例如下:
 
127.0.0.1:6379> multi     # 開啓事務
OK
127.0.0.1:6379> rpush users "assad" "vancy" "tim"
QUEUED
127.0.0.1:6379> rpop users
QUEUED
127.0.0.1:6379> lrange users 0 -1
QUEUED
127.0.0.1:6379> exec    # 提交事務
1) (integer) 3
2) "tim"
3) 1) "assad"
   2) "vancy"
127.0.0.1:6379>



Redis 性能測試

可以以通過 redis 自帶的 redis-benchmark 工具來對 redis 進行性能測試,該工具調用指令如下:
 
redis-benchmark [option] [option value]
其中 option 的列表如下:
  • -h    指定服務器主機名,默認值 127.0.0.1
  • -p    指定服務器端口,默認值 6379
  • -s    指定服務器 socket    
  • -c    指定併發連接數,默認值 50
  • -n    指定請求數,默認值 10000
  • -d    以字節的形式指定 SET/GET 值的數據大小,默認值 2
  • -k    1=keep alive 0=reconnect ,默認值 1
  • -r    SET/GET/INCR 使用隨機 key, SADD 使用隨機值    
  • -P    通過管道傳輸 <numreq> 請求,默認值 1
  • -q    強制退出 redis。僅顯示 query/sec 值    
  • --csv    以 CSV 格式輸出    
  • -l    生成循環,永久執行測試    
  • -t    僅運行以逗號分隔的測試命令列表
  • -I    Idle 模式。僅打開 N 個 idle 連接並等待

以下同時執行 10000 個請求來測試 redis 性能:
 
assad@DESKTOP-assad:/etc/redis$ sudo redis-benchmark -n 100000
[sudo] password for assad:
====== PING_INLINE ======
  100000 requests completed in 1.55 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
99.83% <= 1 milliseconds
100.00% <= 1 milliseconds
64308.68 requests per second
====== PING_BULK ======
  100000 requests completed in 1.55 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
99.81% <= 1 milliseconds
100.00% <= 1 milliseconds
64516.13 requests per second
====== SET ======
  100000 requests completed in 1.55 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
99.91% <= 1 milliseconds
100.00% <= 1 milliseconds
64516.13 requests per second
====== GET ======
  100000 requests completed in 1.56 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
99.86% <= 1 milliseconds
100.00% <= 1 milliseconds
63938.62 requests per second




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