实例的诊断报告从性能水位、访问倾斜情况、慢日志等多方面评估实例的健康状况,帮助您快速定位实例的异常情况。
前提条件
诊断报告组成
- 实例基本信息:展示实例的ID、规格、类型及可用区等基本信息。
- 健康状况概要:展示健康得分及具体的扣分说明。
- 性能水位:展示实例关键性能指标的统计信息及状态。
- TOP 10 节点慢请求:展示发生慢请求次数排名前十的数据节点和对应的慢请求信息。
实例基本信息
展示实例的ID、规格、类型及地域信息。
健康状况概要
展示实例诊断的结果,并对健康状态进行评分(满分为100分)。如果未达满分,您需要关注展示的诊断项和详细信息。
性能水位
展示实例关键性能指标的统计信息及状态,您需要特别关注状态为危险的性能指标。
性能指标 | 危险阈值 | 影响 | 可能的原因及排查方法 |
CPU使用率 | 60% | CPU使用率持续升高将影响实例整体的吞吐量和客户端应用的响应速度,极端情况下甚至会导致应用不可用。 | 可能的原因:
排查方法,请参见排查Redis实例CPU使用率高的问题。 |
内存使用率 | 80% | 内存使用率持续升高可能导致Key频繁被逐出、响应时间上升、QPS(每秒访问次数)不稳定等问题,进而影响业务运行。 | 可能的原因:
排查方法,请参见排查Redis实例内存使用率高的问题。 |
连接数使用率(数据节点) | 80% | 数据节点的连接数被打满后将会导致连接超时或失败。 | 可能的原因:
排查方法,请参见分析Redis实例的实时会话。 |
网络入口流量 | 80% | 当网络的入口或出口超过该规格的最大带宽时,应用服务的性能将会受到影响。 说明 您可以临时调整实例的带宽,降低对业务的影响并获得较长的时间窗口来排查问题。具体操作,请参见手动增加实例带宽。 | 可能的原因:
排查方法,请参见排查Redis实例流量使用率高的问题。 |
网络出口流量 | 80% |
当您的实例为集群架构或读写分离架构时,系统还会综合分析上述性能指标,来衡量实例整体访问的均衡度并体现在诊断报告中。访问倾斜的判断标准、可能的原因及排查方法请参见下表。
说明 如果诊断报告中提示某个性能指标发生了访问倾斜,您需要关注具体的倾斜节点。
访问倾斜判断标准 | 可能的原因 | 排查方法 |
同时满足下述条件:
|
|
TOP 10 节点慢请求
展示发生慢请求次数排名前十的数据节点,并展示对应的慢请求信息,统计来源如下:
- 系统审计日志中保存的数据节点慢日志(仅保留4天)。
- 数据节点本身记录的慢日志(仅保存最近的1024条)。您可以通过redis-cli连接实例并执行SLOWLOG GET查看。
您可以根据展示的慢请求具体命令分析是否存在不合理的命令,不同原因对应的解决方案如下。
原因 | 解决方法 |
执行时间复杂度为O(N)或更高的高消耗命令引起,例如keys *命令。 | 评估并禁用高风险命令和高消耗命令,例如FLUSHALL、KEYS、HGETALL等。具体操作,请参见禁用高风险命令。 |
读写到数据节点中的大Key引起。 | 对大Key进行分析和评估,具体操作,请参见离线全量Key分析,然后从业务方向对大Key进行拆分。 |
文档内容是否对您有帮助?