1. 背景
最近在研究redis的配置信息,想了解为什么这么配置以及如何优化这些配置
2. 配置信息
10.38.162.118:7004> info
# Server 服务器信息
redis_version:3.2.9 #redis版本
redis_git_sha1:00000000 #git上版本
redis_git_dirty:0 #git代码是否修改过
redis_build_id:a0838a7a373aa867 #redis编译时id
redis_mode:cluster # redis 运行模式--集群
os:Linux 2.6.32-220.23.2.mi6.el6.x86_64 x86_64 # redis服务部署机器的操作系统的内核
arch_bits:64 # 架构
multiplexing_api:epoll # 采用epoll模型
gcc_version:4.4.6 # gcc版本
process_id:22111 #redis服务的进程Id
run_id:dbc8f22bfa14e5b1b599c131639ac5271fff96f6 #redis的随机标识符,用于集群和sentinel
tcp_port:7004 #redis服务的启动端口
uptime_in_seconds:79860071 # 运行时长
uptime_in_days:924 # 运行天数
hz:10 # 赫兹,时间事件,每10ms循环一次
lru_clock:635722 #以分钟为单位的自增时钟,用于LRU管理maxmemory-policy内存回收策略
executable:/home/work/soft/redis-3.2.9/src/./redis-server #运行前执行的命令
config_file:/home/work/soft/redis-3.2.9/redis_cluster/7007/redis.conf #配置文件
客户端信息
# Clients
connected_clients:8248 # redis客户端已连接数(不包括通过从属服务器连接的客户端)
client_longest_output_list:0 #所有客户端连接中最长的输出列表 ??输出缓冲峰值
client_biggest_input_buf:0 #输入缓冲峰值 ??
blocked_clients:0 # 正在等待阻塞命令(blpop.brpop等)的客户端数量 ??
内存信息
# Memory
used_memory:1996564624 #由Redis分配的内存数
used_memory_human:1.86G #由Redis分配的内存,格式化为KMG
used_memory_rss:2258923520 #redis 进程从OS角度分配的物理内存
used_memory_rss_human:2.10G #redis 进程从OS角度分配的物理内存(如key删除后,malloc不一定会把内存归还给OS)
used_memory_peak:2492685896 # Redis使用内存的峰值
used_memory_peak_human:2.32G # Redis使用内存的峰值
total_system_memory:67555315712 #系统总内存
total_system_memory_human:62.92G #系统总内存
used_memory_lua:70656 # lua脚本使用内存
used_memory_lua_human:69.00K # lua脚本使用内存
maxmemory:0
maxmemory_human:0B
maxmemory_policy:noeviction #达到最大内存后的内存逐出策略,noeviction代表新增等会返回错误
mem_fragmentation_ratio:1.13 #redis内存碎片比例 ??
mem_allocator:jemalloc-4.0.3 #redis内存管理器 ??
持久化
# Persistence
loading:0 # 是否正在载入数据文件,0代表没有,1代表有
rdb_changes_since_last_save:14
rdb_bgsave_in_progress:0 # 是否正在bgsave或创建rdb快照
rdb_last_save_time:1577686788 #最近一次创建rdb快照的Unix时间戳
rdb_last_bgsave_status:ok #上次save是否成功
rdb_last_bgsave_time_sec:6 #上次save花费时间
rdb_current_bgsave_time_sec:-1 #当前save花费时间 -1代表未进行
aof_enabled:1 # 是否开启aof
aof_rewrite_in_progress:0 # 是否正在aof rewrite
aof_rewrite_scheduled:0 #aof是否被阻塞
aof_last_rewrite_time_sec:9 #最近一次aof花费时间
aof_current_rewrite_time_sec:-1 #当前aof花费时间
aof_last_bgrewrite_status:ok #最近一次aof花费时间
aof_last_write_status:ok #最近一次aof是否成功
aof_current_size:2926691703 #当前aof文件大小
aof_base_size:1841857649 #服务器启动时或者aof重写最近一次执行之后,aof的大小
aof_pending_rewrite:0 #是否有aof重写操作在等待rdb文件创建完毕之后执行
aof_buffer_length:0 # aof 缓冲区的大小
aof_rewrite_buffer_length:0 #aof重写缓冲区的大小 ??
aof_pending_bio_fsync:0 #后台IO队列中,等待执行fsync调用的数量
aof_delayed_fsync:4 #被延迟的fsync调用的数量