原文**:
一、問題提出
有乙個生產系統的redis例項記憶體使用超限引發報警,需要檢視各個key所使用的記憶體分布情況,以便採取進一步的措施。
二、安裝rdr
redis原生並沒提供檢視單個key的記憶體占用情況的命令。經過簡單快速地調研,決定試一下rdr(redis data reveal),主要原因是想體驗一下其圖形化的表示。rdr是用go語言開發的,安裝過程如下。
1. 安裝go
yum -y install go
# 確認go語言環境和版本
2. 一鍵式自動獲取、編譯rdr
//編譯
go build -o rdr *.go //注釋:原文及github的作者都沒有標註出來以下步驟,不然是不會有rdr這個指令碼
結果是生成乙個名為rdr的可執行檔案,只需要將該可執行檔案直接拷貝到其它機器上執行,不再依賴於任何其它環境。
三、用rdr檢視key的記憶體使用情況
//啟動rdr
我們的rdb檔案大小有3g,600多萬個key,在我的虛擬機器上執行分析的時間約為5分20秒。按返回的提示,在瀏覽器中檢視結果如下。
rdr的工作方式是對rdb檔案進行解析,只要有rdb檔案就行,並不需要redis例項。rdr 可以非常方便的對 reids 的記憶體進行分析,了解乙個 redis 例項裡都有哪些 key,哪類 key 占用的空間是多少,最耗記憶體的 key 有哪些,佔比如何,非常直觀。
使用RDR工具檢視Redis中key占用的記憶體
最近,redis集群記憶體占用居高不下,不知道具體是那些key比較占用記憶體,所以需要乙個redis記憶體分析工具來分析一下。經過一番尋找,我發現了rdr這個工具。這個工具的特點就是使用操作簡單,資料清晰明了。rdr redis資料顯示 是解析redis rdbfile的工具。與redis rdb ...
使用Redis Key失效事件實現定時任務
2.1 在這裡介紹一種監聽 redis 鍵值對過期時間來實現定時任務的功能觸發事件機制。2.2 實現思路 3.1 修改 redis 相關事件配置 3.2 引入依賴 org.springframework.boot spring boot starter data redis 3.3 編寫 impor...
檢視頻寬使用
安裝 yum install iftop y 檢視全部連線 iftop 檢視特定網絡卡 iftop i eth1 p 中間的 這兩個左右箭頭,表示的是流量的方向。tx 傳送流量 rx 接收流量 total 總流量 cum 執行iftop到目前時間的總流量 peak 流量峰值 rates 分別表示過去...