加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

Redis几个重要的康健指标

发布时间:2019-01-29 19:11:44 所属栏目:建站 来源:阿飞的博客
导读:存活环境 全部指标中最重要的虽然是搜查redis是否还在世,可以通过呼吁PING的相应是否是PONG来判定。 毗连数 毗连的客户端数目,可通过呼吁src/redis-cli info Clients | grep connected_clients获得,这个值跟行使redis的处事的毗连池设置相关较量大,所

存活环境

全部指标中最重要的虽然是搜查redis是否还在世,可以通过呼吁PING的相应是否是PONG来判定。

毗连数

毗连的客户端数目,可通过呼吁src/redis-cli info Clients | grep connected_clients获得,这个值跟行使redis的处事的毗连池设置相关较量大,以是在监控这个字段的值时必要留意。其它这个值也不能太大,提议不要高出5000,假如太大也许是redis处理赏罚太慢,那么必要解除题目找出缘故起因。

Redis几个重要的康健指标

其它尚有一个拒绝毗连数(rejected_connections)也必要存眷,这个值抱负状态是0。假如大于0,声名建设的毗连数高出了maxclients,必要排查缘故起因。是redis毗连池设置不公道照旧毗连这个redis实例的处事过多等。

阻塞客户端数目

blocked_clients,一样平常是执行了list数据范例的BLPOP可能BRPOP呼吁引起的,可通过呼吁src/redis-cli info Clients | grep blocked_clients获得,很明明,这个值最好应该为0。

行使内存峰值

监控redis行使内存的峰值,我们都知道Redis可以通过呼吁config set maxmemory 10737418240配置应承行使的最大内存(凶猛提议不要高出20G),为了防备产生swap导致Redis机能骤降,乃至因为行使内存超标导致被体系kill,提议used_memory_peak的值与maxmemory的值有个安详区间,譬喻1G,那么used_memory_peak的值不能高出9663676416(9G)。其它,我们还可以监控maxmemory不能少于几多G,好比5G。由于我们早年出产情形出过这样的题目,运维不警惕把10G设置成了1G,从而导致处事器有足够内存却不能行使的悲剧。

内存碎片率

mem_fragmentation_ratio=used_memory_rss/used_memory,这也是一个很是必要体谅的指标。假如是redis4.0之前的版本,这个题目除了重启也没什么很好的优化步伐。而redis4.0有一个首要特征就是优化内存碎片率题目(Memory de-fragmentation)。在redis.conf设置文件中有先容即ACTIVE DEFRAGMENTATION:碎片清算应承Redis压缩内存空间,从而接纳内存。这个特征默认是封锁的,可以通过呼吁CONFIG SET activedefrag yes热启动这个特征。

  • 当这个值大于1时,暗示分派的内存高出现实行使的内存,数值越大,碎片率越严峻。
  • 当这个值小于1时,暗示产生了swap,即可用内存不足。

其它必要留意的是,当内存行使量(used_memory)很小的时辰,这个值参考代价不大。以是,提议used_memory至少1G以上才思量对内存碎片率举办监控。

缓存掷中率

keyspace_misses/keyspace_hits这两个指标用来统计缓存的呼吁率,keyspace_misses指未掷中次数,keyspace_hits暗示掷中次数。keyspace_hits/(keyspace_hits+keyspace_misses)就是缓存掷中率。视环境而定,提议0.9以上,即缓存掷中率要高出90%。假如缓存掷中率过低,那么要排核对缓存的用法是否有题目!

OPS

instantaneous_ops_per_sec这个指标暗示缓存的OPS,假如营业较量安稳,那么这个值也不会颠簸很大,不外海内的营业较量特征,假如不是环球化的产物,夜间是根基上没有什么会见量的,以是这个字段的监控要团结本身的详细营业,差异时刻段颠簸范畴也许有所差异。

耐久化

rdb_last_bgsave_status/aof_last_bgrewrite_status,即最近一次可能说最后一次RDB/AOF耐久化是否有题目,这两个值都应该是"ok"。

其它,因为redis耐久化时会fork子历程,且fork是一个完全阻塞的进程,以是可以监控fork耗时即latest_fork_usec,单元是玄妙,假如这个值较量大会影响营业,乃至呈现timeout。

失效KEY

假如把Redis当缓存行使,那么提议全部的key都配置了expire属性,通过呼吁src/redis-cli info Keyspace获得每个db中key的数目和配置了expire属性的key的属性,且expires必要便是keys:

  1. # Keyspace 
  2. db0:keys=30,expires=30,avg_ttl=0 
  3. db0:keys=23,expires=22,avg_ttl=0 

慢日记

通过呼吁slowlog get获得Redis执行的slowlog荟萃,抱负环境下,slowlog荟萃应该为空,即没有任何慢日记,不外,偶然辰因为收集颠簸等缘故起因造成set key value这种呼吁执行也必要几毫秒,在监控的时辰我们必要留意,而不能看到slowlog就想着去优化,简朴的set/get也许也会呈此刻slowlog中。

【编辑保举】

  1. 从单机到2000万QPS:怎样搭建高可用Redis平台?
  2. 错过血亏!深入进修Redis集群搭建方案及实现道理
  3. Spring Boot集成Redis拭魅战操纵
  4. 行使Redis和Python构建一个共享单车的应用措施
  5. 读完这篇,你必然能真正领略Redis耐久化
【责任编辑:未丽燕 TEL:(010)68476606】
点赞 0

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读