溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis中慢查詢和訂閱模式是什么

發(fā)布時間:2021-11-15 11:06:32 來源:億速云 閱讀:199 作者:iii 欄目:關(guān)系型數(shù)據(jù)庫

這篇文章主要講解了“Redis中慢查詢和訂閱模式是什么”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Redis中慢查詢和訂閱模式是什么”吧!

Redis中慢查詢和訂閱模式是什么

慢查詢

慢查詢?nèi)罩揪褪窍到y(tǒng)在命令執(zhí)行時每條命令的執(zhí)行時間,當超過閥值,就將這條命令記錄下來。【

Redis命令執(zhí)行流程

Redis中慢查詢和訂閱模式是什么

  • 發(fā)送命令

  • 命令排隊

  • 命令執(zhí)行

  • 返回結(jié)果

其中命令執(zhí)行才是慢查詢統(tǒng)計的時間

慢查詢兩個配置參數(shù)

  • slowlog-log-slower-than:預設(shè)閥值,單位是毫秒,假如執(zhí)行一條“很慢”的命令,執(zhí)行時間超過閥值就會被記錄下來

  • slowlog-max-len:設(shè)置慢查詢?nèi)罩咀疃啻鎯Χ嗌贄l

發(fā)布訂閱模式

Redis提供了發(fā)布訂閱功能,可以用于消息的傳輸,Redis的發(fā)布訂閱機制包括三個部分,發(fā)布者,訂閱者和Channel。

Redis中慢查詢和訂閱模式是什么

發(fā)布訂閱功能

  • 發(fā)送消息采用publish命令

Redis中慢查詢和訂閱模式是什么

  • 訂閱某個頻道采用subscribe命令訂閱

Redis中慢查詢和訂閱模式是什么

  • 模式匹配:同時訂閱多個頻道,命令是PSUBSCRIBE

Redis中慢查詢和訂閱模式是什么

Redis過期時間處理

  • 主動處理

定時處理,在設(shè)置過期時間的時候創(chuàng)建一個定時器,當過期時間到的時候立馬執(zhí)行刪除操作,這個操作是即時的,不管在這個時間段內(nèi)有多少過期Key,也不管服務器運行情況,都會被刪除,對CPU不是很友好。

定期刪除,定期刪除是設(shè)置一個時間間隔每個時間段都會檢測是否有過期鍵,如果有就執(zhí)行刪除,

  • 被動處理

當已經(jīng)過期的key再次被訪問時,才會對key是否過期進行判斷,如果已經(jīng)過期,則進行刪除,并返回NIL.這種處理方式對CPU是友好的,不會對其他過期key上占用CPU,但對內(nèi)存不友好,一個key已經(jīng)過期,但是在它被操作前都不會被刪除,仍然占用內(nèi)存空間,如果有大量過期Key沒有被再次操作,則會浪費大量內(nèi)存空間。

3.RDB與AOF對過期鍵的處理

如果在執(zhí)行save或者bgsave命令創(chuàng)建一個RDB時,程序會對數(shù)據(jù)庫中的鍵進行檢查,已過期的鍵不會被保存到新創(chuàng)建的RDB文件中。

當過期鍵被惰性刪除或者定期刪除之后,程序會向AOF文件追加(append)一條DEL命令,來顯式地記錄該鍵已被刪除。

在執(zhí)行AOF重寫的過程中,程序會對數(shù)據(jù)庫中的鍵進行檢查,已過期的鍵不會被保存到重寫后的AOF文件中。

內(nèi)存回收

noeviction:默認策略,不會刪除任何數(shù)據(jù),拒絕所有寫入操作并返回客戶端錯誤信息,此時Redis只響應讀操作。

volatitle-rlu:根據(jù)LRU算法刪除設(shè)置了超時屬性的鍵,知道騰出足夠空間為止。如果沒有可刪除的鍵對象,回退到noeviction策略。

allkeys-lru:根據(jù)LRU算法刪除鍵,不管數(shù)據(jù)有沒有設(shè)置超時屬性,直到騰出足夠空間為止。

allkeys-random:隨機刪除所有鍵,知道騰出足夠空間為止。

volatitle-random:隨機刪除過期鍵,知道騰出足夠空間為止。

volatitle-ttl:根據(jù)鍵值對象的ttl屬性,刪除最近將要過期數(shù)據(jù)。如果沒有,回退到noeviction策略

感謝各位的閱讀,以上就是“Redis中慢查詢和訂閱模式是什么”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對Redis中慢查詢和訂閱模式是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI