CN114880158A - 一种Redis实例诊断方法及装置 - Google Patents

一种Redis实例诊断方法及装置 Download PDF

Info

Publication number
CN114880158A
CN114880158A CN202210809318.9A CN202210809318A CN114880158A CN 114880158 A CN114880158 A CN 114880158A CN 202210809318 A CN202210809318 A CN 202210809318A CN 114880158 A CN114880158 A CN 114880158A
Authority
CN
China
Prior art keywords
diagnosed
diagnosis
key
redis
redis instance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210809318.9A
Other languages
English (en)
Inventor
陈实
张益军
王金明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feihu Information Technology Tianjin Co Ltd
Original Assignee
Feihu Information Technology Tianjin Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Feihu Information Technology Tianjin Co Ltd filed Critical Feihu Information Technology Tianjin Co Ltd
Priority to CN202210809318.9A priority Critical patent/CN114880158A/zh
Publication of CN114880158A publication Critical patent/CN114880158A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明提供一种Redis实例诊断方法及装置,预先对Redis实例的问题进行分类并构建分析模块,在响应用户发起的Redis实例诊断工单之后,调用待诊断Redis实例,运行不同类型问题各自对应的分析模块自动对该待诊断Redis实例进行诊断,能够快速、有效和全面的发现待诊断Redis实例运行过程中所存在的问题。

Description

一种Redis实例诊断方法及装置
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种Redis实例诊断方法及装置。
背景技术
Redis是一个跨平台的非关系型数据库,可用于缓存、数据库、消息中间件。目前各个企业在使用Redis服务的过程中,均会对当前运行的Redis实例的运行状况等进行快速诊断,以便于在使用Redis服务期间及时发现可能存在的问题。
在现有技术中,常见的Redis实例诊断方式主要是通过redis-cli客户端自带命令工具或开源的工具,如redis-fainay等。在使用上述工具对Redis实例进行分析诊断时,其分析过程多依赖于人工分析,执行过程相对复杂,且一种工具只能分析一种问题,不能全面对Redis实例进行诊断,导致Redis实例诊断效率低下,存在无法快速、有效、全面的实现对Redis实例进行诊断的问题。
发明内容
有鉴于此,本发明实施例提供一种Redis实例诊断方法及装置,以解决现有无法快速、有效、全面的实现对Redis实例进行诊断的问题。
为解决上述问题,本发明实施例提供如下技术方案:
本发明实施例第一方面公开了一种Redis实例诊断方法,所述方法包括:
响应Redis实例诊断工单,触发Redis实例诊断,所述Redis实例诊断工单包括应用名称、待诊断Redis实例,以及所述待诊断Redis实例所对应的待诊断问题类型;
解析所述Redis实例诊断工单,获取所述应用名称、待诊断Redis实例和待诊断问题类型;
基于所述应用名称由Redis实例列表中调用所述待诊断Redis实例;
根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告。
可选的,还包括:
根据所述诊断报告,查询所述待诊断Redis实例所对应的不同类型的诊断问题的诊断结果,并展示所述诊断结果。
可选的,还包括:
若所述诊断结果存在问题,调用针对所述问题预先存储的解决方案并展示。
可选的,根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告,包括:
针对每一所述待诊断问题类型,调用所述待诊断问题类型对应的分类问题诊断模块;
运行所述分类问题诊断模块,诊断分析所述待诊断Redis实例在当前分类问题下的运行状况,获取诊断结果并输出。
可选的,根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告,包括:
若所述待诊断问题类型为bigkey问题,调用所述bigkey问题对应的bigkey问题诊断模块;
运行所述bigkey问题诊断模块,诊断分析所述待诊断Redis实例运行过程中所存在的bigkey的键key的占用内存,并输出所述待诊断Redis实例运行过程中所存在的bigkey的键key,以及所述的键key所占用的内存空间;
若所述待诊断问题类型为热点键key问题,调用所述热点键key问题对应的热点键key诊断模块;
运行所述热点键key诊断模块,诊断分析所述待诊断Redis实例运行过程中预设时间段内所访问的键key的频次,并按照频次由大至小输出所述预设时间段内所访问的键key和频次;
若所述待诊断问题类型为内存使用状况,调用所述内存使用状况对应的内存使用状况诊断模块;
运行所述内存使用状况诊断模块,诊断分析所述待诊断Redis实例运行过程中内存键key所占用的内存空间大小,并输出内存空间大小超过预设值的内存键key;
若所述待诊断问题类型为空闲键key状况,调用所述空闲键key状况对应的空闲键key诊断模块;
运行所述空闲键key诊断模块,诊断分析所述待诊断Redis实例运行过程中占用内存但未访问的空闲键key,并输出所述空闲键key未被访问的天数。
本发明实施例第二方面公开了一种Redis实例诊断装置,包括:
响应单元,用于响应Redis实例诊断工单,触发Redis实例诊断,所述Redis实例诊断工单包括应用名称、待诊断Redis实例,以及所述待诊断Redis实例所对应的待诊断问题类型;
解析单元,用于解析所述Redis实例诊断工单,获取所述应用名称、待诊断Redis实例和待诊断问题类型;
调用单元,用于基于所述应用名称由Redis实例列表中调用所述待诊断Redis实例;
分析单元,用于根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告;
展示单元,用于展示Redis实例诊断过程中的所需的人机交互界面和诊断报告。
可选的,还包括:
查询单元,用于根据所述诊断报告,查询所述待诊断Redis实例所对应的不同类型的诊断问题的诊断结果,并基于所述展示单元展示所述诊断结果。
可选的,还包括:
辅助单元,用于若所述诊断结果存在问题,调用针对所述问题预先存储的解决方案并基于所述展示单元展示所述解决方案。
可选的,所述分析单元,包括:
第一调用模块,用于针对每一所述待诊断问题类型,调用所述待诊断问题类型对应的分类问题诊断模块;
分类问题诊断模块,用于诊断分析所述待诊断Redis实例在当前分类问题下的运行状况,获取诊断结果并输出。
可选的,所述分析单元,包括:
第二调用模块,用于若所述待诊断问题类型为bigkey问题,调用所述bigkey问题对应的bigkey问题诊断模块;若所述待诊断问题类型为热点键key问题,调用所述热点键key问题对应的热点键key诊断模块;若所述待诊断问题类型为内存使用状况,调用所述内存使用状况对应的内存使用状况诊断模块;若所述待诊断问题类型为空闲键key状况,调用所述空闲键key状况对应的空闲键key诊断模块;
所述bigkey问题诊断模块,用于诊断分析所述待诊断Redis实例运行过程中所存在的bigkey的键key的占用内存,并输出所述待诊断Redis实例运行过程中所存在的bigkey的键key,以及所述的键key所占用的内存空间;
所述热点键key诊断模块,用于诊断分析所述待诊断Redis实例运行过程中预设时间段内所访问的键key的频次,并按照频次由大至小输出所述预设时间段内所访问的键key和频次;
所述内存使用状况诊断模块,用于诊断分析所述待诊断Redis实例运行过程中内存键key所占用的内存空间大小,并输出内存空间大小超过预设值的内存键key;
所述空闲键key诊断模块,用于诊断分析所述待诊断Redis实例运行过程中占用内存但未访问的空闲键key,并输出所述空闲键key未被访问的天数。
基于上述本发明实施例提供的一种Redis实例诊断方法及装置,通过响应Redis实例诊断工单,触发Redis实例诊断,所述Redis实例诊断工单包括应用名称、待诊断Redis实例,以及所述待诊断Redis实例所对应的待诊断问题类型;解析所述Redis实例诊断工单,获取所述应用名称、待诊断Redis实例和待诊断问题类型;基于所述应用名称确定对应的Redis实例列表,并由所述Redis实例列表调用所述待诊断Redis实例;根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告。在本发明实施例中,预先对Redis实例的问题进行分类并构建分析模块,在响应用户发起的Redis实例诊断工单之后,调用待诊断Redis实例,运行不同类型问题各自对应的分析模块自动对该待诊断Redis实例进行诊断,能够快速、有效和全面的发现待诊断Redis实例运行过程中所存在的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种Redis实例诊断方法的流程示意图;
图2为本发明实施例公开的诊断工具的一种人机交互界面示意图;
图3为本发明实施例公开的一种Redis实例诊断装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
如图1所示,为本发明实施例公开的一种Redis实例诊断方法的流程图,主要包括如下步骤:
S101:响应Redis实例诊断工单,触发Redis实例诊断。
在S101中,所述Redis实例诊断工单包括应用名称、待诊断Redis实例,以及所述待诊断Redis实例所对应的待诊断问题类型。
该待诊断问题类型包括但不限于热点键key问题、bigkey问题、连接拒绝问题、是否存在阻塞问题、实例慢查询问题、实例延迟事件问题等。
在具体执行S101之前,用户在本发明实施例提供的诊断工具的人机交互界面上创建Redis实例诊断工单。图2示出了本发明实施例公开的该诊断工具的一种人机交互界面示意图。图2中示出了项目栏和诊断应用的Redis实例诊断工单的创建界面。该Redis实例诊断工单的创建界面包括:应用选择框、实例选择框、诊断问题类型选择框和提交键。
在一实施例中,该Redis实例诊断工单默认诊断全部问题。可选的,该诊断工具也提供部分问题的诊断选项。
在具体执行S101的过程中,响应用户基于需求创建的Redis实例诊断工单,触发Redis实例诊断。
S102:解析所述Redis实例诊断工单,获取所述应用名称、待诊断Redis实例和待诊断问题类型。
S103:基于所述应用名称由Redis实例列表中调用所述待诊断Redis实例。
在S103中,Redis实例列表为预先构建的,该Redis实例列表中包含提供Redis服务时所需或需运行的Redis实例信息。
在执行S103的过程中,因执行不同应用时,所需运行的Redis实例有所不同。通过应用名称确定当前待运行的应用,再基于Redis实例诊断工单中的待诊断Redis实例,由Redis实例列表中调用相同的诊断Redis实例。
S104:根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告。
在具体执行S104的过程中,根据Redis实例诊断工单中的待诊断问题类型,触发相应的诊断程序,针对待诊断Redis实例,按照不同类型的待诊断问题采用并行或串行的方式进行分类分析,得到待诊断Redis实例每一分类下的诊断报告。
在一实施例中,首先,针对每一所述待诊断问题类型,调用所述待诊断问题类型对应的分类问题诊断模块。
然后,运行所述分类问题诊断模块,诊断分析所述待诊断Redis实例在当前分类问题下的运行状况,获取诊断结果并输出。
以Redis实例诊断过程中常见的诊断问题类型进行说明。
在一实施例中,bigkey问题主要通过诊断分析待诊断Redis实例中是否存在一些占用内存空间较多的键key来确认。若键key占用较多的内存空间,当在Redis服务中调用Redis实例时可能会存在性能问题。
因此,若所述待诊断问题类型为bigkey问题,调用所述bigkey问题对应的bigkey问题诊断模块。
运行所述bigkey问题诊断模块,诊断分析所述待诊断Redis实例运行过程中所存在的bigkey的键key的占用内存,并输出所述待诊断Redis实例运行过程中所存在的bigkey的键key,以及所述的键key所占用的内存空间。
在一实施例中,热点键key问题主要通过诊断分析待诊断Redis实例运行过程中高频访问的键key频次来确认。基于高频次访问的键key可以检测是否有刷量或是一些热度穿透问题影响。
因此,若所述待诊断问题类型为热点键key问题,调用所述热点键key问题对应的热点键key诊断模块。
运行所述热点键key诊断模块,诊断分析所述待诊断Redis实例运行过程中预设时间段内所访问的键key的频次,并按照频次由大至小输出所述预设时间段内所访问的键key和频次。
在一实施例中,若所述待诊断问题类型为内存使用状况,调用所述内存使用状况对应的内存使用状况诊断模块。
运行所述内存使用状况诊断模块,诊断分析所述待诊断Redis实例运行过程中内存键key所占用的内存空间大小,并输出内存空间大小超过预设值的内存键key。
其中,该预设值为大于10KB的值。
在一实施例中,若所述待诊断问题类型为空闲键key状况,调用所述空闲键key状况对应的空闲键key诊断模块;
运行所述空闲键key诊断模块,诊断分析所述待诊断Redis实例运行过程中占用内存但未访问的空闲键key,并输出所述空闲键key未被访问的天数。
在一实施例中,在执行S104得到诊断报告之后,还可以根据所述诊断报告,查询所述待诊断Redis实例所对应的不同类型的诊断问题的诊断结果,并展示所述诊断结果。
例如,在完成内存使用状况的诊断后,触发查询具体的诊断结果,展示诊断结果。
在一实施例中,根据上述诊断结果,若所述诊断结果存在问题,可调用针对所述问题预先存储的解决方案并展示。方便运维人员参考。
在本发明实施例公开的Redis实例诊断方法中,预先对Redis实例的问题进行分类并构建分析模块,在响应用户发起的Redis实例诊断工单之后,调用待诊断Redis实例,运行不同类型问题各自对应的分析模块自动对该待诊断Redis实例进行诊断,能够快速、有效和全面的发现待诊断Redis实例运行过程中所存在的问题。
基于上述本发明实施例公开的一种Redis实例诊断方法,本发明实施例还对应公开了一种Redis实例诊断装置,如图3所示,该Redis实例诊断装置包括:响应单元301、解析单元302、调用单元303、分析单元304和展示单元305。
其中,响应单元301,用于响应Redis实例诊断工单,触发Redis实例诊断,所述Redis实例诊断工单包括应用名称、待诊断Redis实例,以及所述待诊断Redis实例所对应的待诊断问题类型。
解析单元302,用于解析所述Redis实例诊断工单,获取所述应用名称、待诊断Redis实例和待诊断问题类型。
调用单元303,用于基于所述应用名称由Redis实例列表中调用所述待诊断Redis实例。
分析单元304,用于根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告。
在一实施例中,该分析单元301,包括:
第一调用模块,用于针对每一所述待诊断问题类型,调用所述待诊断问题类型对应的分类问题诊断模块。
分类问题诊断模块,用于诊断分析所述待诊断Redis实例在当前分类问题下的运行状况,获取诊断结果并输出。
在一实施例中,该分析单元301,包括:
第二调用模块,用于若所述待诊断问题类型为bigkey问题,调用所述bigkey问题对应的bigkey问题诊断模块;若所述待诊断问题类型为热点键key问题,调用所述热点键key问题对应的热点键key诊断模块;若所述待诊断问题类型为内存使用状况,调用所述内存使用状况对应的内存使用状况诊断模块;若所述待诊断问题类型为空闲键key状况,调用所述空闲键key状况对应的空闲键key诊断模块。
所述bigkey问题诊断模块,用于诊断分析所述待诊断Redis实例运行过程中所存在的bigkey的键key的占用内存,并输出所述待诊断Redis实例运行过程中所存在的bigkey的键key,以及所述的键key所占用的内存空间。
所述热点键key诊断模块,用于诊断分析所述待诊断Redis实例运行过程中预设时间段内所访问的键key的频次,并按照频次由大至小输出所述预设时间段内所访问的键key和频次。
所述内存使用状况诊断模块,用于诊断分析所述待诊断Redis实例运行过程中内存键key所占用的内存空间大小,并输出内存空间大小超过预设值的内存键key。
所述空闲键key诊断模块,用于诊断分析所述待诊断Redis实例运行过程中占用内存但未访问的空闲键key,并输出所述空闲键key未被访问的天数。
展示单元305,用于展示Redis实例诊断过程中的所需的人机交互界面和诊断报告。
在一实施例中,该Redis实例诊断装置还包括:
查询单元,用于根据所述诊断报告,查询所述待诊断Redis实例所对应的不同类型的诊断问题的诊断结果,并基于所述展示单元305展示所述诊断结果。
在一实施例中,该Redis实例诊断装置还包括:
辅助单元,用于若所述诊断结果存在问题,调用针对所述问题预先存储的解决方案并基于所述展示单元305展示所述解决方案。
在本发明实施例公开的Redis实例诊断装置中,预先对Redis实例的问题进行分类并构建分析模块,在响应用户发起的Redis实例诊断工单之后,调用待诊断Redis实例,运行不同类型问题各自对应的分析模块自动对该待诊断Redis实例进行诊断,能够快速、有效和全面的发现待诊断Redis实例运行过程中所存在的问题。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种Redis实例诊断方法,其特征在于,所述方法包括:
响应Redis实例诊断工单,触发Redis实例诊断,所述Redis实例诊断工单包括应用名称、待诊断Redis实例,以及所述待诊断Redis实例所对应的待诊断问题类型;
解析所述Redis实例诊断工单,获取所述应用名称、待诊断Redis实例和待诊断问题类型;
基于所述应用名称由Redis实例列表中调用所述待诊断Redis实例;
根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告。
2.根据权利要求1所述的方法,其特征在于,还包括:
根据所述诊断报告,查询所述待诊断Redis实例所对应的不同类型的诊断问题的诊断结果,并展示所述诊断结果。
3.根据权利要求2所述的方法,其特征在于,还包括:
若所述诊断结果存在问题,调用针对所述问题预先存储的解决方案并展示。
4.根据权利要求1至3中任一项所述的方法,其特征在于,根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告,包括:
针对每一所述待诊断问题类型,调用所述待诊断问题类型对应的分类问题诊断模块;
运行所述分类问题诊断模块,诊断分析所述待诊断Redis实例在当前分类问题下的运行状况,获取诊断结果并输出。
5.根据权利要求1至3中任一项所述的方法,其特征在于,根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告,包括:
若所述待诊断问题类型为bigkey问题,调用所述bigkey问题对应的bigkey问题诊断模块;
运行所述bigkey问题诊断模块,诊断分析所述待诊断Redis实例运行过程中所存在的bigkey的键key的占用内存,并输出所述待诊断Redis实例运行过程中所存在的bigkey的键key,以及所述的键key所占用的内存空间;
若所述待诊断问题类型为热点键key问题,调用所述热点键key问题对应的热点键key诊断模块;
运行所述热点键key诊断模块,诊断分析所述待诊断Redis实例运行过程中预设时间段内所访问的键key的频次,并按照频次由大至小输出所述预设时间段内所访问的键key和频次;
若所述待诊断问题类型为内存使用状况,调用所述内存使用状况对应的内存使用状况诊断模块;
运行所述内存使用状况诊断模块,诊断分析所述待诊断Redis实例运行过程中内存键key所占用的内存空间大小,并输出内存空间大小超过预设值的内存键key;
若所述待诊断问题类型为空闲键key状况,调用所述空闲键key状况对应的空闲键key诊断模块;
运行所述空闲键key诊断模块,诊断分析所述待诊断Redis实例运行过程中占用内存但未访问的空闲键key,并输出所述空闲键key未被访问的天数。
6.一种Redis实例诊断装置,其特征在于,包括:
响应单元,用于响应Redis实例诊断工单,触发Redis实例诊断,所述Redis实例诊断工单包括应用名称、待诊断Redis实例,以及所述待诊断Redis实例所对应的待诊断问题类型;
解析单元,用于解析所述Redis实例诊断工单,获取所述应用名称、待诊断Redis实例和待诊断问题类型;
调用单元,用于基于所述应用名称由Redis实例列表中调用所述待诊断Redis实例;
分析单元,用于根据所述待诊断问题类型对所述待诊断Redis实例进行分类分析,并针对每一分类输出各自对应的诊断报告;
展示单元,用于展示Redis实例诊断过程中的所需的人机交互界面和诊断报告。
7.根据权利要求6所述的装置,其特征在于,还包括:
查询单元,用于根据所述诊断报告,查询所述待诊断Redis实例所对应的不同类型的诊断问题的诊断结果,并基于所述展示单元展示所述诊断结果。
8.根据权利要求7所述的装置,其特征在于,还包括:
辅助单元,用于若所述诊断结果存在问题,调用针对所述问题预先存储的解决方案并基于所述展示单元展示所述解决方案。
9.根据权利要求6至8中任一项所述的装置,其特征在于,所述分析单元,包括:
第一调用模块,用于针对每一所述待诊断问题类型,调用所述待诊断问题类型对应的分类问题诊断模块;
分类问题诊断模块,用于诊断分析所述待诊断Redis实例在当前分类问题下的运行状况,获取诊断结果并输出。
10.根据权利要求6至8中任一项所述的装置,其特征在于,所述分析单元,包括:
第二调用模块,用于若所述待诊断问题类型为bigkey问题,调用所述bigkey问题对应的bigkey问题诊断模块;若所述待诊断问题类型为热点键key问题,调用所述热点键key问题对应的热点键key诊断模块;若所述待诊断问题类型为内存使用状况,调用所述内存使用状况对应的内存使用状况诊断模块;若所述待诊断问题类型为空闲键key状况,调用所述空闲键key状况对应的空闲键key诊断模块;
所述bigkey问题诊断模块,用于诊断分析所述待诊断Redis实例运行过程中所存在的bigkey的键key的占用内存,并输出所述待诊断Redis实例运行过程中所存在的bigkey的键key,以及所述的键key所占用的内存空间;
所述热点键key诊断模块,用于诊断分析所述待诊断Redis实例运行过程中预设时间段内所访问的键key的频次,并按照频次由大至小输出所述预设时间段内所访问的键key和频次;
所述内存使用状况诊断模块,用于诊断分析所述待诊断Redis实例运行过程中内存键key所占用的内存空间大小,并输出内存空间大小超过预设值的内存键key;
所述空闲键key诊断模块,用于诊断分析所述待诊断Redis实例运行过程中占用内存但未访问的空闲键key,并输出所述空闲键key未被访问的天数。
CN202210809318.9A 2022-07-11 2022-07-11 一种Redis实例诊断方法及装置 Pending CN114880158A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210809318.9A CN114880158A (zh) 2022-07-11 2022-07-11 一种Redis实例诊断方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210809318.9A CN114880158A (zh) 2022-07-11 2022-07-11 一种Redis实例诊断方法及装置

Publications (1)

Publication Number Publication Date
CN114880158A true CN114880158A (zh) 2022-08-09

Family

ID=82683656

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210809318.9A Pending CN114880158A (zh) 2022-07-11 2022-07-11 一种Redis实例诊断方法及装置

Country Status (1)

Country Link
CN (1) CN114880158A (zh)

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106547664A (zh) * 2016-11-04 2017-03-29 北京车智赢软件有限公司 C#版Redis系统监控工具
CN107273286A (zh) * 2017-06-02 2017-10-20 携程计算机技术(上海)有限公司 针对任务应用的场景自动化测试平台及方法
CN110232024A (zh) * 2019-05-26 2019-09-13 必成汇(成都)科技有限公司 软件自动化测试框架及测试方法
CN110457211A (zh) * 2019-07-23 2019-11-15 腾讯科技(深圳)有限公司 脚本性能测试方法、装置和设备及计算机存储介质
CN110674168A (zh) * 2019-08-29 2020-01-10 北京大米科技有限公司 一种缓存键异常检测方法、装置、存储介质以及终端
CN111324809A (zh) * 2020-02-04 2020-06-23 京东数字科技控股有限公司 一种热点信息监测方法、装置及系统
CN111338901A (zh) * 2020-02-26 2020-06-26 平安壹钱包电子商务有限公司 一种Redis监控方法、Redis监控装置及终端
CN111367781A (zh) * 2020-05-26 2020-07-03 浙江大学 一种实例处理方法及其装置
CN111414351A (zh) * 2020-03-20 2020-07-14 中国建设银行股份有限公司 一种MySQL数据库的性能诊断方法及装置
CN112084055A (zh) * 2020-08-19 2020-12-15 广州小鹏汽车科技有限公司 应用系统的故障定位方法、装置、电子设备及存储介质
US20210055927A1 (en) * 2019-08-23 2021-02-25 Skyhigh Networks, Llc Systems, method, and media for determining security compliance of continuous build software
CN113051319A (zh) * 2021-04-29 2021-06-29 携程旅游网络技术(上海)有限公司 基于Redis的大key的检测方法、系统、设备及存储介质
CN113360334A (zh) * 2020-03-05 2021-09-07 北京京东振世信息技术有限公司 内存资源的预警方法、装置及计算机可读存储介质
CN113542068A (zh) * 2021-07-15 2021-10-22 中国银行股份有限公司 一种Redis多实例的监控系统及方法
CN113836044A (zh) * 2021-11-26 2021-12-24 华中科技大学 一种软件故障采集和分析的方法及系统
CN114116391A (zh) * 2021-11-19 2022-03-01 天翼数字生活科技有限公司 Redis实例的健康检测方法、装置、设备及存储介质
CN114398343A (zh) * 2022-01-12 2022-04-26 平安普惠企业管理有限公司 数据库异常键处理方法、装置、设备及介质
CN114637656A (zh) * 2022-05-13 2022-06-17 飞狐信息技术(天津)有限公司 基于Redis的监控方法、装置、存储介质和设备

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106547664A (zh) * 2016-11-04 2017-03-29 北京车智赢软件有限公司 C#版Redis系统监控工具
CN107273286A (zh) * 2017-06-02 2017-10-20 携程计算机技术(上海)有限公司 针对任务应用的场景自动化测试平台及方法
CN110232024A (zh) * 2019-05-26 2019-09-13 必成汇(成都)科技有限公司 软件自动化测试框架及测试方法
CN110457211A (zh) * 2019-07-23 2019-11-15 腾讯科技(深圳)有限公司 脚本性能测试方法、装置和设备及计算机存储介质
US20210055927A1 (en) * 2019-08-23 2021-02-25 Skyhigh Networks, Llc Systems, method, and media for determining security compliance of continuous build software
CN110674168A (zh) * 2019-08-29 2020-01-10 北京大米科技有限公司 一种缓存键异常检测方法、装置、存储介质以及终端
CN111324809A (zh) * 2020-02-04 2020-06-23 京东数字科技控股有限公司 一种热点信息监测方法、装置及系统
CN111338901A (zh) * 2020-02-26 2020-06-26 平安壹钱包电子商务有限公司 一种Redis监控方法、Redis监控装置及终端
CN113360334A (zh) * 2020-03-05 2021-09-07 北京京东振世信息技术有限公司 内存资源的预警方法、装置及计算机可读存储介质
CN111414351A (zh) * 2020-03-20 2020-07-14 中国建设银行股份有限公司 一种MySQL数据库的性能诊断方法及装置
CN111367781A (zh) * 2020-05-26 2020-07-03 浙江大学 一种实例处理方法及其装置
CN112084055A (zh) * 2020-08-19 2020-12-15 广州小鹏汽车科技有限公司 应用系统的故障定位方法、装置、电子设备及存储介质
CN113051319A (zh) * 2021-04-29 2021-06-29 携程旅游网络技术(上海)有限公司 基于Redis的大key的检测方法、系统、设备及存储介质
CN113542068A (zh) * 2021-07-15 2021-10-22 中国银行股份有限公司 一种Redis多实例的监控系统及方法
CN114116391A (zh) * 2021-11-19 2022-03-01 天翼数字生活科技有限公司 Redis实例的健康检测方法、装置、设备及存储介质
CN113836044A (zh) * 2021-11-26 2021-12-24 华中科技大学 一种软件故障采集和分析的方法及系统
CN114398343A (zh) * 2022-01-12 2022-04-26 平安普惠企业管理有限公司 数据库异常键处理方法、装置、设备及介质
CN114637656A (zh) * 2022-05-13 2022-06-17 飞狐信息技术(天津)有限公司 基于Redis的监控方法、装置、存储介质和设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
丰继林 等: "《网络安全技术》", 30 September 2009, 清华大学出版社 北京交通大学出版社 *
阿里云数据库: ""深度干货|一文详解Redis中BigKey、HotKey的发现与处理"", 《知乎专栏(HTTPS://ZHUANLAN.ZHIHU.COM/P/405337501)》 *

Similar Documents

Publication Publication Date Title
US11347577B1 (en) Monitoring features of components of a distributed computing system
US11409645B1 (en) Intermittent failure metrics in technological processes
US11880399B2 (en) Data categorization using inverted indexes
US11061918B2 (en) Locating and categorizing data using inverted indexes
US9229769B2 (en) Monitoring of computer events and steps linked by dependency relationships to generate completed processes data and determining the completed processes data meet trigger criteria
US20110153540A1 (en) Techniques for generating diagnostic results
US9588869B2 (en) Computer implemented system and method of instrumentation for software applications
US9372776B2 (en) Monitoring user activity and performance of computerized devices
US7885943B1 (en) IT compliance rules
CN105426234B (zh) 数据库死锁检测方法及装置
US11044144B2 (en) Self-monitoring
US11106713B2 (en) Sampling data using inverted indexes in response to grouping selection
US20030023408A1 (en) System for collecting and storing information
CN114697232A (zh) Skywalking探针的指标数据采集系统、方法及电子设备
CN114880158A (zh) 一种Redis实例诊断方法及装置
CN117194165A (zh) 服务器性能监测方法、装置、计算机设备和存储介质
CN114924931B (zh) 一种监控维护图数据库的方法、系统、装置和介质
CN115525392A (zh) 容器监控方法、装置、电子设备及存储介质
CN112925777A (zh) 一种用于探测hive数据库数据血缘的方法及系统
CN115827394A (zh) 一种基于Zabbix的监控告警方法
CN115967650A (zh) 一种数据处理方法及装置
CN115630024A (zh) 一种数据库的慢日志分析方法、装置、设备及存储介质
CN117251358A (zh) 一种应用界面的测试方法、装置、设备和存储介质
CN117205540A (zh) 游戏监控方法、装置、设备及存储介质
CN118051403A (zh) 关键链路的分析方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20220809

RJ01 Rejection of invention patent application after publication