菜就是原罪,不抱怨,睡眠充足
- 命令
127.0.0.1:6379> info [server|clients|memory|stats|...]
# Server
redis_version:5.0.4 #redis版本
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:964fe9af98041665
redis_mode:standalone #運行模式,單機或集群
os:Linux 3.10.0-693.21.1.el7.x86_64 x86_64 #系統版本
arch_bits:64 #架構,32位或64位
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:4.8.5 #編譯redis時所使用的gcc版本
process_id:2939 #redis服務器的進程id
run_id:11b5694d024d8c728c1448ec4163fb0c22b86375 #redis服務器的隨機標識符(用於sentinel和集群)
tcp_port:6379 #redis服務監聽端口
uptime_in_seconds:18316 #redis服務啟動時長,單位為秒
uptime_in_days:0 #redis服務啟動時長,單位為天
hz:10 #redis內部調度(進行關閉timeout的客戶端,刪除過期key等等)頻率
configured_hz:10
lru_clock:4564768
executable:/usr/local/redis/redis-server #執行文件位置
config_file:/usr/local/redis/./redis.conf #配置文件位置
# Clients
connected_clients:2 #已連接的客戶端數(不包括通過slave連接的客戶端)
client_recent_max_input_buffer:2
client_recent_max_output_buffer:0
blocked_clients:0 #正在等待阻塞命令(BLPOP、BRPOP、BRPOPLPUSH)的客戶端的數量
# Memory
used_memory:8985032 #由redis分配器分配的內存總量,以字節為單位
used_memory_human:8.57M #易讀方式
used_memory_rss:15175680 #從操作系統的角度,返回redis已分配的內存總量(俗稱常駐集大小)
used_memory_rss_human:14.47M
used_memory_peak:14859000 #redis的內存消耗峰值(以字節為單位)
used_memory_peak_human:14.17M
used_memory_peak_perc:60.47% #峰值內存超出分配內存(used_memory)的百分比
used_memory_overhead:5407864 #服務器為管理其內部數據結構而分配的所有開銷的字節總和
used_memory_startup:862032 #Redis在啟動時消耗的初始內存量(以字節為單位)
used_memory_dataset:3577168
used_memory_dataset_perc:44.04%
allocator_allocated:8951208
allocator_active:15137792
allocator_resident:15137792
total_system_memory:512077824 #系統內存總量
total_system_memory_human:488.36M
used_memory_lua:37888 #Lua引擎使用的字節量
used_memory_lua_human:37.00K
used_memory_scripts:0
used_memory_scripts_human:0B
number_of_cached_scripts:0
maxmemory:0 #配置設置的最大可使用內存值
maxmemory_human:0B
maxmemory_policy:noeviction
allocator_frag_ratio:1.69
allocator_frag_bytes:6186584
allocator_rss_ratio:1.00
allocator_rss_bytes:0
rss_overhead_ratio:1.00
rss_overhead_bytes:37888
mem_fragmentation_ratio:1.70 #used_memory_rss和used_memory之間的比率
mem_fragmentation_bytes:6224472 #used_memory_rss和used_memory之間的差值,單位字節
mem_not_counted_for_evict:0
mem_replication_backlog:0
mem_clients_slaves:0
mem_clients_normal:66616
mem_aof_buffer:0
mem_allocator:libc #內存分配器,在編譯時選擇
active_defrag_running:0 #指示活動碎片整理是否處於活動狀態的標志
lazyfree_pending_objects:0
# Persistence
loading:0 #服務器是否正在載入持久化rdb文件
rdb_changes_since_last_save:0 #自上次rdb持久化以來發生改變的數值
rdb_bgsave_in_progress:0 #服務器是否正在創建rdb文件
rdb_last_save_time:1564845192 #最后一次成功rdb持久化的時間戳
rdb_last_bgsave_status:ok #最后一次rdb持久化是否成功
rdb_last_bgsave_time_sec:0 #最后一次成功生成rdb文件耗時秒數
rdb_current_bgsave_time_sec:-1 #當前bgsave已耗費的時間(如果有)
rdb_last_cow_size:438272 #上次rbd保存操作期間寫時復制分配的字節大小
aof_enabled:0 #aof功能是否開啟
aof_rewrite_in_progress:0 #標識aof的rewrite操作是否在進行中
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1 #最后一次aof rewrite耗費的時長
aof_current_rewrite_time_sec:-1 #當前rewrite已耗費的時間(如果有)
aof_last_bgrewrite_status:ok #最后一次bgrewrite是否成功
aof_last_write_status:ok #上次aof寫入狀態
aof_last_cow_size:0 #上次AOF重寫操作期間寫時復制分配的大小(以字節為單位)
如果激活了AOF,則會添加以下附加字段:
aof_current_size:4201740 #aof當前尺寸
aof_base_size:4201687 #服務器啟動時或者aof重寫最近一次執行之后aof文件的大小
aof_pending_rewrite:0 #是否有aof重寫操作在等待rdb文件創建完畢之后執行?
aof_buffer_length:0 #aof buffer的大小
aof_rewrite_buffer_length:0 #aof rewrite buffer的大小
aof_pending_bio_fsync:0 #后台I/O隊列里面,等待執行的fsync調用數量
aof_delayed_fsync:0 #被延遲的fsync調用數量
如果正在進行加載操作,則會添加以下附加字段:
loading_start_time #加載操作開始的基於紀元的時間戳
loading_total_bytes #文件總大小
loading_loaded_bytes #已加載的字節數
loading_loaded_perc #加載進度表示為百分比
loading_eta_seconds #ETA在幾秒鍾內完成負載
# Stats
total_connections_received:7212 #服務接受的總連接數
total_commands_processed:2341631 #服務器處理的總命令數
instantaneous_ops_per_sec:0 #每秒處理的命令數
total_net_input_bytes:125344667 #從網絡讀取的總字節數
total_net_output_bytes:1712517025 #寫入網絡的總字節數
instantaneous_input_kbps:0.00 #網絡讀取速率KB/sec
instantaneous_output_kbps:0.00 #網絡寫入速率KB/sec
rejected_connections:0 #因達到最大連接數而拒絕的連接
sync_full:1 #給從節點完全同步的數量
sync_partial_ok:0 #接受的同步請求數量
sync_partial_err:0 #拒絕的同步請求數量
expired_keys:0 #鍵到期的總數
expired_stale_perc:0.00
expired_time_cap_reached_count:0
evicted_keys:0 #因達到maxmemory限制而被驅逐的鍵的數量
keyspace_hits:641037 #Number of successful lookup of keys in the main dictionary
keyspace_misses:9002 #Number of failed lookup of keys in the main dictionary
pubsub_channels:1
pubsub_patterns:0
latest_fork_usec:326 #最新fork操作的持續時間(以微秒為單位)
migrate_cached_sockets:0
slave_expires_tracked_keys:0
active_defrag_hits:0
active_defrag_misses:0
active_defrag_key_hits:0
active_defrag_key_misses:0
# Replication
role:master #master or slave
connected_slaves:0 #已建立連接的從節點數
master_replid:fe1bb6f5cfef91b36603d8e57081cc02890705c8 #復制ID
master_replid2:0000000000000000000000000000000000000000 #第二個復制ID,用於failover的PSYNC
master_repl_offset:86270959 #服務當前的復制偏移量
second_repl_offset:-1 #The offset up to which replication IDs are accepted
repl_backlog_active:0
repl_backlog_size:1048576 #復制積壓緩沖區的總大小(B)
repl_backlog_first_byte_offset:85222384 #復制積壓緩沖區的主偏移量
repl_backlog_histlen:1048576 #復制積壓緩沖區中數據的大小
# CPU
used_cpu_sys:24.941282 #Redis服務消耗的系統cpu
used_cpu_user:18.820039 #Redis服務消耗的用戶cpu
used_cpu_sys_children:0.050757 #后台進程占用的系統cpu
used_cpu_user_children:0.259980 #后台進程占用的用戶cpu
# Cluster #集群信息
cluster_enabled:0
# Keyspace #數據庫的統計信息
db0:keys=85766,expires=0,avg_ttl=0
used_memory_rss和used_memory之間的比率解讀:
在理想情況下, used_memory_rss 的值應該只比 used_memory 稍微高一點兒。當 rss > used ,且兩者的值相差較大時,表示存在(內部或外部的)內存碎片。內存碎片的比率可以通過 mem_fragmentation_ratio 的值看出。當 used > rss 時,表示 Redis 的部分內存被操作系統換出到交換空間了,在這種情況下,操作可能會產生明顯的延遲。當 Redis 釋放內存時,分配器可能會,也可能不會,將內存返還給操作系統。如果 Redis 釋放了內存,卻沒有將內存返還給操作系統,那么 used_memory 的值可能和操作系統顯示的 Redis 內存占用並不一致。查看 used_memory_peak 的值可以驗證這種情況是否發生。