redis的参数解释

  • include /path/to/local.conf
    • 当有公用配置时,可以采用独立出公共配置文件然后引入的方式达到公共配置unixsocket
  • /tmp/redis.sock
    • 通过socket文件进行通信,比通过TCP模型通信效率更高,但是需要客户端和服务端都在同一个机器上
  • timeout 0
    • 当连接空闲超过一定时间后,就会关闭此链接,0表示禁止关闭连接
  • tcp-keepalive 0
    • 用于TCP的socket连接活跃性检测,0表示关闭检测功能,如果开启会增加网络流量
  • syslog-enabled no
    • 是否开启系统日志,即采用linux的syslog模块来记录日志,默认不开启!
  • repl-diskless-sync no
    • 全量同步时,是否把快照先存于磁盘,如果存于磁盘,会有10性能,但是可以复用RDB文件
    • 如果不存于磁盘,就会直接把RDB文件流发送给从节点,复用性降低,在从节点比较少的时候,建议开启
  • repl-diskless-sync-delay 5
    • 与上一个参数相关,当上一个设置为yes ,采用不存储磁盘时, master等待一定时间,等待更多的从节点要求增量复制,然后进行并行复制
  • maxclients 10000
    • 最大客户端连接数,需要同时修改linux的最大线程数和文件句柄数
  • maxmemory
    • 设置内存的最大值,要小于物理内存,如果有从服务器或者其它应用也适用此物理服务器,则要预留更多的空间,避免出现内存溢出,或者性能变慢,可以占用物理内存的3/4
    • 当内存使用达到此限制后,将会触发内存淘汰或者返回错误给客户端,需要根据maxmemory-policy属性的配置来做决定
  • maxmemory-policy noeviction
    • 内存满了后的淘汰策略,默认为noeviction ,即没有淘汰策略,直接返回错误给客户端
    • volatile-lru :利用lru算法淘汰设置过过期时间的key
    • allkeys-lru :利用lru算法淘汰所有的keyv
    • olatile-random :随机的淘汰设置过过期时间的key
    • allkeys-random :随机的淘汰所有的keyvolatile-ttl :淘汰即将到达过期时间的key
    • noeviction :没有淘汰算法
  • slowlog-log-slower-than 10000
    • 设置慢日志的时间,即操作花费的时间大于此时间就会记录日志,单位为微妙
  • client-output-buffer-limit
    • 当某些客户端由于处理速度不够,服务器端会缓冲一部分数据,当超过缓冲硬缓冲的限制,则会把客户端的连接关闭
    • 当超过软限制( soft limit) ,并且达到一定的时间soft seconds ,则也会关闭连接
    • client-output-buffer-limit normal 0 0 0 //normal代表常规客户端,包括监控类型的客户端
    • client-output-buffer-limit slave 256mb 64mb 60 //slave代表主从结构的客户端
    • client-output-buffer-limit pubsub 32mb 8mb 60 //订阅类型的客户端

info命令

  • 通过cli合令行执行info或者info all可以查看更详细的监控信息,# server为服务器端信息
客户端信息
  • client-longestoutput list :由于客户端处理比较慢,服务器端会缓冲一部分数据,如果客户端处理及时,一般为0

  • 比如:当slave同步滞后比较严重时,此值就比较大,会导致redis内存耗尽

  • clientlongest-outputlist :由于客户端处理比较慢,服务器端会缓冲一部分数据,如果客户端处理及时一般为0,比如:当slave同步滞后比较严重时,此值就比较大,会导致redis内存耗尽

  • clientbiggestinputbuf:服务器端处理比较慢,缓冲客户端发送过来的数据blocked_clients :阻塞的客户端数,通过调用阻塞命令导致( BLPOP BRPOP BRPOPLPUSH )

  • 内存使用情况

    • used_memory: redis分配的内存使用情况
    • used_memory_human:以可读的方式显示上一个值
    • used-memory_rss: linux系统的rss值,与top命令看见的一样,实际使用物理内存(包含共享库占用的内存)used_memory_peak:最高峰值
    • mem fragmentation_ratio: used_memory_rss/ used_memorymem_allocator:分配器
  • Persistence

    • Loading :表示是否在加载dump的文件
    • rdb_changes-since-last-save :上次dump后,发生了多少变化rdb-bgsavein-progress:是否在做bgsave操作
    • rdb lastsave-time :上一次rdb save成功的时间
    • rdb_last-bgsave_status :上一次rdb save操作的状态
    • rdb lastbgsavetime-sec :上一次bqsave花费的时间
    • rdb_currentbgsave-time-sec:当前bqsave操作花费的时间aofenabled :是否开启aof
    • aofrewrite-in-progress: aof的rewrite是否正在执行
    • aof rewrite-scheduled:是否有aof的rewrite操作等待执行aoflast rewrite-time-sec:最后一次aof的rewrite消耗的时间
    • aof_current - rewritetime-sec:当前正在执行的aof的rewrite时间
    • aof-current-size :当前aof文件的大小
    • aof-base-size:上一次操作或者rewrite后的aof文件大小
    • aof_pending_rewrite:是否有aof的rewrite操作等待执行,当rdb的save操作执行完成后
    • aof-bufferlength : aof的缓冲大小
    • aof-rewritebufferlength : aof的rewrite的缓冲大小
    • aof-delayed_fsync :延迟刷新磁盘的计数器
  • Stats

    • total_connections-received:服务器接受的所有连接数
    • total_commands_processed: redis服务器处理过的所有命令数
    • instantaneous-_ops-per-sec :每秒处理的操作数
    • total_net-input-bytes :网络输入数据总量
    • total_net-output-bytes :网络输出数据总量
    • instantaneous-input-kbps :网络输入的速度
    • instantaneous-outputkbps :网络输出速率rejected-connections :由于maxclients现在被拒绝的连接数
    • sync_partial_ok
    • sync_full
    • sync_partial err
    • expired_keys :运行以来过期的key的数量
    • evicted-keys:运行以来删除过的key的数量
    • keyspace_misses :在主字典中没有找到key的次数
    • latest fork-_usec :最后一次fork操作的耗时
  • monitor

    • 通过monitor命令,可以查看到服务器所有接收到被执行的命令只可以用于调试时候用,不能一直用于生产环境
posted @ 2018-09-19 13:44  Jenvid  阅读(788)  评论(0编辑  收藏  举报