python獲取redis memory使用情況場景分析
更新時間:2022年12月21日 15:39:14 作者:kngines
這篇文章主要介紹了python獲取redis memory使用情況,項(xiàng)目研發(fā)過程中,用到Python操作Redis場景,記錄學(xué)習(xí)過程中的心得體會,需要的朋友可以參考下
項(xiàng)目研發(fā)過程中,用到Python操作Redis場景,記錄學(xué)習(xí)過程中的心得體會。
一、環(huán)境搭建
- Windows + Anaconda3
- 安裝
redis
第3方包,pip install -u redis
pip install -u # 升級安裝
- linux下查看redis配置信息
bind 127.0.0.1 # 表示只允許本地訪問,無法遠(yuǎn)程連接 bind 0.0.0.0 # 表示任何ip都可以訪問 protected-mode yes # 保護(hù)模式,只允許本地鏈接 protected-mode no # 保護(hù)模式關(guān)閉 daemonize yes # 開啟守護(hù)進(jìn)程模式。單進(jìn)程多線程模式,redis在后臺運(yùn)行。 daemonize no # redis命令行界面,exit強(qiáng)制退出或關(guān)閉連接都會導(dǎo)致redis進(jìn)程退出
配置示例
- 查找
redis.conf
文件路徑位置,find / -name 'redis.conf'
- 查看
redis.conf
文件,vim redis.conf
二、代碼實(shí)現(xiàn)
1、StrictRedis vs Redis
- StrictRedis用于實(shí)現(xiàn)大部分官方的命令,并使用官方語法和命令;
- Redis是StrictRedis的子類,用于向后兼容舊版本的redis-py;
- 官方推薦使用StrictRedis方法。
2、 實(shí)驗(yàn)代碼
import redis r = redis.Redis(host='10.xx.xx.201', port=7019,decode_responses=True, password='********') mmj = r.info('Memory') # result / r.execute_command('info Memory') used_memory = mmj.get('used_memory') maxmemory = mmj.get('maxmemory') used_memory_human = mmj.get('used_memory_human') maxmemory_human = mmj.get('maxmemory_human') left_mem_ratio = (maxmemory - used_memory)*1.0/maxmemory
三、redis info
1、memory
信息項(xiàng) | 解釋 |
---|---|
used_memory | 由Redis分配器分配的內(nèi)存總量,包含redis進(jìn)程內(nèi)部的開銷和數(shù)據(jù)占用的內(nèi)存,以字節(jié)為單位 |
used_memory_human | 更直觀展示分配的內(nèi)存總量。 |
used_memory_rss | 向os申請的內(nèi)存大小。與 top 、 ps等命令的輸出一致。 |
used_memory_rss_human | 更直觀展示向os申請的內(nèi)存大小。 |
used_memory_peak | redis的內(nèi)存消耗峰值(以字節(jié)為單位) |
used_memory_peak_human | 更直觀返回redis的內(nèi)存消耗峰值 |
used_memory_peak_perc | 使用內(nèi)存達(dá)到峰值內(nèi)存的百分比,即(used_memory/ used_memory_peak) *100% |
used_memory_overhead | Redis為了維護(hù)數(shù)據(jù)集的內(nèi)部機(jī)制所需的內(nèi)存開銷,包括所有客戶端輸出緩沖區(qū)、查詢緩沖區(qū)、AOF重寫緩沖區(qū)和主從復(fù)制的backlog。 |
used_memory_startup | Redis服務(wù)器啟動時消耗的內(nèi)存 |
used_memory_dataset | 數(shù)據(jù)占用的內(nèi)存大小,即used_memory-sed_memory_overhead |
used_memory_dataset_perc | 數(shù)據(jù)占用的內(nèi)存大小的百分比,100%*(used_memory_dataset/(used_memory-used_memory_startup)) |
total_system_memory | 整個系統(tǒng)內(nèi)存 |
total_system_memory_human | 以更直觀的格式顯示整個系統(tǒng)內(nèi)存 |
used_memory_lua | Lua腳本存儲占用的內(nèi)存 |
used_memory_lua_human | 以更直觀的格式顯示Lua腳本存儲占用的內(nèi)存 |
maxmemory | Redis實(shí)例的最大內(nèi)存配置 |
maxmemory_human | 以更直觀的格式顯示Redis實(shí)例的最大內(nèi)存配置 |
maxmemory_policy | 當(dāng)達(dá)到maxmemory時的淘汰策略 |
mem_fragmentation_ratio | 碎片率,used_memory_rss/ used_memory |
mem_allocator | 內(nèi)存分配器 |
active_defrag_running | 表示沒有活動的defrag任務(wù)正在運(yùn)行,1表示有活動的defrag任務(wù)正在運(yùn)行(defrag:表示內(nèi)存碎片整理) |
lazyfree_pending_objects | 0表示不存在延遲釋放的掛起對象 |
到此這篇關(guān)于python獲取redis memory使用情況的文章就介紹到這了,更多相關(guān)python redis memory使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vscode寫python時的代碼錯誤提醒和自動格式化的方法
這篇文章主要介紹了vscode寫python時的代碼錯誤提醒和自動格式化的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05Python日期時間模塊datetime詳解與Python 日期時間的比較,計(jì)算實(shí)例代碼
python中的datetime模塊提供了操作日期和時間功能,本文為大家講解了datetime模塊的使用方法及與其相關(guān)的日期比較,計(jì)算實(shí)例2018-09-09在Python中實(shí)現(xiàn)函數(shù)重載的示例代碼
這篇文章主要介紹了在Python中實(shí)現(xiàn)函數(shù)重載的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Python爬蟲獲取op.gg英雄聯(lián)盟英雄對位勝率的源碼
這篇文章主要介紹了Python爬蟲獲取op.gg英雄聯(lián)盟英雄對位勝率,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01