1. 程式人生 > >Redis 最佳實踐命令總結

Redis 最佳實踐命令總結

Redis是單執行緒和高效能

      1) 因為redis的資料都是在記憶體中的,所有的運算都是記憶體級別的,記憶體級別的運算是納秒級別的,因此redis理想的QPS是

10萬

     2) 單執行緒天生的避免了執行緒之間切換造成的效能損耗問題

     3) 因為是單執行緒,所以對於比較耗時的命令(keys *),就慎用,一不小心就可能導致redis卡頓,主從模式還可能導致

主從切換

Redis是單執行緒和高併發

    因為redis採用IO多路複用

:redis利用epoll來實現IO多路複用,將連線資訊和事件放到佇列中,依次放到檔案事件分

派器,檔案事件分派器分發給事件處理器

一:info 命令

info commandstats #整個redis執行了哪些命令、分別執行了多少次、總計耗時、平均每次耗時等資訊

config resetstat #重置統計

二:client list 命令

#這條命令在排查redis慢的時候絕對是神技。
#一般阻塞的命令都會導致omem不斷升高,這條命令能快速找到引起阻塞的命令,
[[email protected] bin]# ./redis-cli -h 172.20.10.60 -p 6379 client list | grep -v "omem=0"

 三:使用scan命令 替代 keys * 命令 

   1) 漸進式遍歷鍵

   2) scan 引數提供了三個引數,第一個是 cursor 整數值,第二個是 key 的正則模式,第三個是遍歷的 limit hint。

第一次遍歷時,cursor 值為 0,然後將返回結果中第一個整數值作為下一次遍歷的 cursor。一直遍歷到返回的

 cursor 值為 0 時結束

#命令例項
scan 0 match key88* count 100

四:del刪除命令隱藏的問題,del在刪除list,set,sorted set等資料型別的key時,如果資料量比較大的時候,

就可能會導致阻塞