你的位置:首页 > 软件开发 > ASP.net > Redis性能问题排查解决手册(七)

Redis性能问题排查解决手册(七)

发布时间:2015-08-19 09:00:07
阅读目录:性能相关的数据指标内存使用率used_memory命令处理总数total_commands_processed延迟时间内存碎片率回收key总结性能相关的数据指标通过Redis-cli命令行界面访问到Redis服务器,然后使用info命令获取所有与Redis服务相关的信息 ...

Redis性能问题排查解决手册(七)

 阅读目录:

  1. 性能相关的数据指标
  2. 内存使用率used_memory
  3. 命令处理总数total_commands_processed
  4. 延迟时间
  5. 内存碎片率
  6. 回收key
  7. 总结

性能相关的数据指标

通过Redis-cli命令行界面访问到Redis服务器,然后使用info命令获取所有与Redis服务相关的信息。通过这些信息来分析文章后面提到的一些性能指标。为了快速定位并解决性能问题,这里选择5个关键性的数据指标,它包含了大多数人在使用Redis上会经常碰到的性能问题。

内存使用率used_memory

上图中used_memory 字段数据表示的是:由Redis分配器分配的内存总量,以字节(byte)为单位。其中used_memory_human上的数据和used_memory是一样的值,它以M为单位显示,仅为了方便阅读。used_memory是Redis使用的内存总量,它包含了实际缓存占用的内存和Redis自身运行所占用的内存(如元数据、lua)。它是由Redis使用内存分配器分配的内存,所以这个数据并没有把内存碎片浪费掉的内存给统计进去。

其他字段代表的含义,都以字节为单位:

  • used_memory_rss:从操作系统上显示已经分配的内存总量。
  • mem_fragmentation_ratio: 内存碎片率。
  • used_memory_lua: Lua脚本引擎所使用的内存大小。
  • mem_allocator: 在编译时指定的Redis使用的内存分配器,可以是libc、jemalloc、tcmalloc。

因内存交换引起的性能问题

内存使用率是Redis服务最关键的一部分。如果一个Redis实例的内存使用率超过可用最大内存 (used_memory > 可用最大内存),那么操作系统开始进行内存与swap空间交换,把内存中旧的或不再使用的内容写入硬盘上(硬盘上的这块空间叫Swap分区),以便腾出新的物理内存给新页或活动页(page)使用。

原标题:Redis性能问题排查解决手册(七)

关键词:Redis

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录