CN113434382A - 数据库性能监控方法、装置、电子设备及计算机可读介质 - Google Patents
数据库性能监控方法、装置、电子设备及计算机可读介质 Download PDFInfo
- Publication number
- CN113434382A CN113434382A CN202110783483.7A CN202110783483A CN113434382A CN 113434382 A CN113434382 A CN 113434382A CN 202110783483 A CN202110783483 A CN 202110783483A CN 113434382 A CN113434382 A CN 113434382A
- Authority
- CN
- China
- Prior art keywords
- database
- diagnosis
- task
- test
- acquisition
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3428—Benchmarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
Abstract
本发明公开了数据库性能监控方法、装置、电子设备及计算机可读介质,涉及数据库技术领域,一具体实施方式包括接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务;执行采集诊断任务,以对测试平台的被测数据库进行扫描,进而更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。从而,本发明实施方式能够解决当前数据库性能问题诊断滞后、效率低下,且成本高、花费大量人力劳动、不同步、难收集的问题。
Description
技术领域
本发明涉及数据库技术领域,提出一种数据库性能监控方法、装置、电子设备及计算机可读介质。
背景技术
随着信息技术的不断发展,数据库技术已逐渐成为计算机信息系统和应用系统的基础和核心。目前,数据库不仅面临着海量数据存储与高并发访问,还需要为业务关键系统的不间断稳定运行提供支持,这些都对数据库性能有着非常高的要求。当前系统投产版本迭代频繁,在投产过程中出现的各类质量问题中,约有8%左右的质量问题根源来自于数据库性能方面,因此需要在开发测试阶段高效率、低成本的甄别、定位影响性能的数据库问题,进而完成执行分析和优化整改,能有效规避数据库性能问题带来的风险,对生产运维至关重要。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
在进行不同测试场景的性能测试过程中,如发现交易响应时间异常、数据库资源异常等情况,无法实时在测试平台直接进行问题检测,需通过检查数据库日志、拉取AWR(Automatic Workload Repository自动负载信息库)报告等手段排查定位问题,即数据库问题实时检测性不强。在运行稳定性测试结束后,应关注对应测试过程中数据库性能表现并收集性能问题,需通过人工手段获取并需要具备一定的数据库知识进行问题分析,即数据库问题收集诊断难度大。
发明内容
有鉴于此,本发明实施例提供一种数据库性能监控方法、装置、电子设备及计算机可读介质,能够解决当前数据库性能问题诊断滞后、效率低下,且成本高、花费大量人力劳动、不同步、难收集的问题,从而达到自动化、及时、全面地诊断数据库性能问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种数据库性能监控方法,包括接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务;执行采集诊断任务,以对测试平台的被测数据库进行扫描,进而更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
可选地,执行采集诊断任务之前,包括:
调用测试平台接口,获取被测数据库的连接串信息;
开启连接串信息中的网络访问关系,以与被测数据库连通。
可选地,还包括:
调用存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接开启连接串信息中的网络访问关系;若否则将被测数据库的连接串信息存储至连接信息表中,再开启连接串信息中的网络访问关系。
可选地,通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第一采集诊断任务;
执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:
响应于测试平台所述测试任务的触发,以执行第一采集诊断任务,进而对被测数据库进行实时扫描。
可选地,通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第二采集诊断任务;
执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:
响应于测试平台所述测试任务的完成,以执行第二采集诊断任务,进而对被测数据库进行扫描。
可选地,采用工厂模式生成所述测试任务对应的采集诊断任务。
可选地,采用工厂模式生成所述测试任务对应的采集诊断任务,包括:
定义采集诊断任务的抽象父类;
定义任务工厂抽象接口,读取所述抽象父类的配置文件并加载,进而实例化采集诊断任务的抽象父类,以调用各诊断函数;
根据预设的数据库性能检核规则,生成多个采集诊断子任务,以继承实例化后的抽象父类,进而基于继承后的采集诊断子任务生成对应的采集诊断任务。
可选地,导出对应的被测数据库扫描结果之后,包括:
生成诊断信息,以将所述诊断信息与采集诊断任务进行映射并存储。
另外,本发明还提供了一种数据库性能监控装置,包括:
应用层,用于接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务;
任务调度引擎,用于执行采集诊断任务,以对测试平台的被测数据库进行扫描;
展示层,用于更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
可选地,应用层,还用于:
调用测试平台接口,获取被测数据库的连接串信息;
开启连接串信息中的网络访问关系,以与被测数据库连通。
可选地,还包括:
管理层,用于存储连接信息表;
应用层,还用于调用管理层存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接开启连接串信息中的网络访问关系;若否则将被测数据库的连接串信息存储至连接信息表中,再开启连接串信息中的网络访问关系。
可选地,应用层通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第一采集诊断任务;
任务调度引擎执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:
任务调度引擎响应于测试平台所述测试任务的触发,以执行第一采集诊断任务,进而对被测数据库进行实时扫描。
可选地,应用层通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第二采集诊断任务;
任务调度引擎执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:任务调度引擎响应于测试平台所述测试任务的完成,以执行第二采集诊断任务,进而对被测数据库进行扫描。
可选地,应用层,还用于:
采用工厂模式生成所述测试任务对应的采集诊断任务。
可选地,应用层采用工厂模式生成所述测试任务对应的采集诊断任务,包括:
定义采集诊断任务的抽象父类;
定义任务工厂抽象接口,读取所述抽象父类的配置文件并加载,进而实例化采集诊断任务的抽象父类,以调用各诊断函数;
根据预设的数据库性能检核规则,生成多个采集诊断子任务,以继承实例化后的抽象父类,进而基于继承后的采集诊断子任务生成对应的采集诊断任务。
可选地,管理层,还用于:
将所述诊断信息与采集诊断任务进行映射并存储。
上述发明中的一个实施例具有如下优点或有益效果:本发明通过与自动化测试平台集成,支持在测试平台建立测试任务时同步关联本次测试数据库并建立数据库扫描任务;并且,支持在测试平台进行不同测试场景的性能测试时,实时查看数据库SQL信息以及数据库资源监控数据,实现对数据库的动态监控以及实时检测;可检测并诊断出稳定性测试结束后针对数据库中存在全表扫描、物理读高、逻辑读高的问题SQL,以及在性能测试场景下实时检测动态返回数据库的SQL信息;同时,提出了数据库性能信息采集诊断逻辑设计,可实现一站式数据库信息采集及性能问题诊断,能够简化采集诊断流程,高效定位问题,对未来拓展诊断规则以及其他类型数据库提供可行性依据。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明第一实施例的数据库性能监控方法的主要流程的示意图;
图2是根据本发明实施例的采用工厂模式生成采集诊断任务的生成示意图;
图3是根据本发明第二实施例的数据库性能监控方法的主要流程的示意图;
图4是根据本发明第三实施例的数据库性能监控方法的主要流程的示意图;
图5是根据本发明第四实施例的数据库性能监控方法的主要流程的示意图;
图6是根据本发明第五实施例的数据库性能监控方法的主要流程的示意图;
图7是根据本发明实施例的数据库性能监控装置的主要模块的示意图;
图8是根据本发明实施例的数据库性能监控装置的架构示意图;
图9是本发明实施例可以应用于其中的示例性系统架构图;
图10是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明第一实施例的数据库性能监控方法的主要流程的示意图,如图1所示,所述数据库性能监控方法包括:
步骤S101,接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务。
其中,测试平台是指集成非功能测试工具及监控的工具,包括了非功能测试任务的建立、脚本创建、测试执行、资源监控、自动化生成报告等功能。数据库性能检核规则是基于数据库设计开发规范、生产事件分析和数据库专家经验综合生成的数据库性能问题诊断SQL语句,分为动态检核规则(例如审核对象类型为SQL)和静态检核规则(例如审核对象类型为索引、表、序列、对象)。
步骤S102,执行采集诊断任务,以对测试平台的被测数据库进行扫描,进而更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
在一些实施例中,执行采集诊断任务之前,可以调用测试平台接口,获取被测数据库的连接串信息。然后开启连接串信息中的网络访问关系,以与被测数据库连通。进一步地,调用存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接开启连接串信息中的网络访问关系;若否则将被测数据库的连接串信息存储至连接信息表中,再开启连接串信息中的网络访问关系。也就是说,将被测数据库的连接串信息与存储的连接串信息进行匹配,如果匹配成功则进行被测数据库连通性验证以与被测数据库连通;如果匹配不成功则先将被测数据库的连接串信息存储,再对被测数据库进行连通性验证以与被测数据库连通。而对被测数据库进行连通性验证的时候,可以判断连接串信息的网络访问关系是否开通,若是则验证通过,与被测数据库连通;若否则验证不通过,开通连接串的网络访问关系以与被测数据库连通。
值得说明的是,可以通过可视化页面对存储的连接串信息进行维护和更新,例如在页面新增或修改被测数据库连接串信息。
作为另一些实施例,采用工厂模式生成测试任务的采集诊断任务,定义抽象父类,便于子任务的添加扩展。如图2所示,具体的实施过程包括:
步骤S201,定义采集诊断任务的抽象父类,然后定义任务工厂抽象接口。
例如,定义抽象父类SuperTask,包括抽象方法collectData()方法以及processData()方法。定义任务工厂抽象接口TaskFactory,且声明一个createTask()方法。
步骤S202,通过任务工厂抽象接口的实现类进行接口实现。
例如:TaskFactoryImp是TaskFactory接口的实现类,对createTask()方法进行实现,并返回SuperTask。
步骤S203,读取所述抽象父类的配置文件并加载。
步骤S204,实例化采集诊断任务的抽象父类,以调用各诊断函数。
例如:CollectTaskFactory是根据类路径来创建类实例的工厂,通过加载抽象父类的配置文件,并根据键值获取抽象父类路径,最后加载抽象父类。
步骤S205,根据预设的数据库性能检核规则,生成多个采集诊断子任务,以继承实例化后的抽象父类,进而基于继承后的采集诊断子任务生成对应的采集诊断任务。
例如:OracleStaricRuleTask、OracleDynamicRuleTask采集诊断子任务继承抽象父类SuperTask,并分别对collectData()方法、processData()方法等等诊断函数进行实现。
另外,
图3是根据本发明第二实施例的数据库性能监控方法的主要流程的示意图,如图3所示,应用于随测随扫的采集诊断,所述数据库性能监控方法,包括:
步骤S301,接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务。
步骤S302,识别采集诊断类型,通过预设的数据库性能检核规则生成第一采集诊断任务。
步骤S303,响应于测试平台所述测试任务的触发,以执行第一采集诊断任务,进而对被测数据库进行实时扫描。
步骤S304,更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
图4是根据本发明第三实施例的数据库性能监控方法的主要流程的示意图,如图4所示,应用于随测随扫的采集诊断(例如数据库Top10SQL采集诊断任务),所述数据库性能监控方法,包括:
步骤S401,接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务。
步骤S402,识别采集诊断类型,通过预设的数据库性能检核规则生成第一采集诊断任务。
其中,采用工厂模式生成第一采集诊断任务,第一采集诊断任务包括多个第一采集诊断子任务。
步骤S403,调用测试平台接口,获取被测数据库的连接串信息。
步骤S404,调用存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接进行步骤S406,若否则先进行步骤S405,再进行步骤S406。
步骤S405,将被测数据库的连接串信息存储至连接信息表中。
步骤S406,开启连接串信息中的网络访问关系,以与被测数据库连通。
步骤S407,响应于测试平台所述测试任务的触发,以执行第一采集诊断任务,进而对被测数据库进行实时扫描。
步骤S408,更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
其中,可以实时或待所有第一采集诊断子任务执行结束,导出对应的被测数据库扫描结果。
图5是根据本发明第四实施例的数据库性能监控方法的主要流程的示意图,如图5所示,应用于测试完成进行数据库扫描,所述数据库性能监控方法包括:
步骤S501,接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务。
步骤S502,识别采集诊断类型,通过预设的数据库性能检核规则生成第二采集诊断任务。
步骤S503,响应于测试平台所述测试任务的完成,以执行第二采集诊断任务,进而对被测数据库进行扫描。
步骤S504,更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
图6是根据本发明第五实施例的数据库性能监控方法的主要流程的示意图,如图6所示,应用于测试完成进行数据库扫描,所述数据库性能监控方法包括:
步骤S601,接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务。
步骤S602,识别采集诊断类型,通过预设的数据库性能检核规则生成第二采集诊断任务。
其中,采用工厂模式生成第二采集诊断任务,第二采集诊断任务包括多个第二采集诊断子任务。
步骤S603,调用测试平台接口,获取被测数据库的连接串信息。
步骤S604,调用存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接进行步骤S606,若否则先进行步骤S605,再进行步骤S606。
步骤S605,将被测数据库的连接串信息存储至连接信息表中。
步骤S606,开启连接串信息中的网络访问关系,以与被测数据库连通。
步骤S607,响应于测试平台所述测试任务的完成,以执行第二采集诊断任务,进而对被测数据库进行扫描。
步骤S608,更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
其中,可以实时或待所有第二采集诊断子任务执行结束,导出对应的被测数据库扫描结果。
值得说明的是,在进行步骤S304、步骤S408、步骤S504以及步骤S608的过程中,可以监控各个第一采集诊断子任务或第二采集诊断子任务的执行情况,待所有第一采集诊断子任务或第二采集诊断子任务完成,将基于扫描结果生成的诊断信息写入数据库扫描诊断结果表中,从而可以将数据库扫描诊断结果表添加至测试聚合报告中。
可以看出,本发明可以支持与测试平台的集成,实现在执行测试场景的同时,自动关联本次被测数据库,并同步扫描数据库,通过数据库性能检核规则,从数据库(例如oracle数据库)的静态视图表中获取存在的全表扫描、物理读高、逻辑读高的问题,并在该测试场景执行结束后将生成的诊断信息集成到该测试场景的报告中。另外,本发明可以实时查看被测数据库信息以及数据库资源监控数据,以便及时查看到数据库的性能问题,定位影响数据库性能的原因。
图7是根据本发明实施例的数据库性能监控装置的主要模块的示意图,如图7所示,所述数据库性能监控装置包括应用层701、任务调度引擎702和展示层703。其中,应用层701接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务。任务调度引擎702执行采集诊断任务,以对测试平台的被测数据库进行扫描。展示层703更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
在一些实施例中,应用层701,还用于:
调用测试平台接口,获取被测数据库的连接串信息;
开启连接串信息中的网络访问关系,以与被测数据库连通。
在一些实施例中,应用层701通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第一采集诊断任务;
任务调度引擎702执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:
任务调度引擎702响应于测试平台所述测试任务的触发,以执行第一采集诊断任务,进而对被测数据库进行实时扫描。
在一些实施例中,应用层701通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第二采集诊断任务;
任务调度引擎702执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:任务调度引擎响应于测试平台所述测试任务的完成,以执行第二采集诊断任务,进而对被测数据库进行扫描。
在一些实施例中,应用层701,还用于:
采用工厂模式生成所述测试任务对应的采集诊断任务。
在一些实施例中,应用层701采用工厂模式生成所述测试任务对应的采集诊断任务,包括:
定义采集诊断任务的抽象父类;
定义任务工厂抽象接口,读取所述抽象父类的配置文件并加载,进而实例化采集诊断任务的抽象父类,以调用各诊断函数;
根据预设的数据库性能检核规则,生成多个采集诊断子任务,以继承实例化后的抽象父类,进而基于继承后的采集诊断子任务生成对应的采集诊断任务。
在一些实施例中,应用层701,还用于:
调用存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接开启连接串信息中的网络访问关系;若否则将被测数据库的连接串信息存储至连接信息表中,再开启连接串信息中的网络访问关系。
需要说明的是,在本发明所述数据库性能监控方法和所述数据库性能监控装置在具体实施内容上具有相应关系,故重复内容不再说明。
作为实施例,如图8所示,为本发明实施例的数据库性能监控方法的架构示意图,可以包括管理层、任务调度引擎、应用层和展示层。其中,管理层负责包括数据库管理、扫描任务管理以及规则管理三个内容。而数据库管理可以维护与测试平台被测数据库的连接串信息,具体的实施包括:在预设的可视化页面新增或修改数据库连接串信息,也可以获取测试平台中被测数据库的连接串信息并添加至数据库的连接信息表。而扫描任务管理将所述诊断信息与采集诊断任务进行映射并存储。规则管理则可以对数据库性能检核规则进行配置,例如可支持针对SQL的审计对象类型的数据库性能检核规则。
其中,任务调度引擎可以设置接口与测试平台对接,实现被测数据库的SQL实时调用。
其中,应用层可以设置接口与测试平台对接,接收数据库扫描请求,依据数据库性能检核规则生成采集诊断任务,进行问题诊断和分析。
其中,展示层可以实时诊断信息的展示(例如:随测随扫Top10 SQL诊断信息展示)和将数据库采集诊断结果通过报告的方式进行导出。较佳的,展示层可以设置接口,以将诊断信息输出。
需要说明的是,本发明可以将前后端分离的方式实现。其中前端使用VUE.js框架,后端采用微服务框架例如Spring boot、Spring batch。
图9示出了可以应用本发明实施例的数据库性能监控方法或数据库性能监控装置的示例性系统架构900。
如图9所示,系统架构900可以包括终端设备901、902、903,网络904和服务器905。网络904用以在终端设备901、902、903和服务器905之间提供通信链路的介质。网络904可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
游客可以使用终端设备901、902、903通过网络904与服务器905交互,以接收或发送消息等。终端设备901、902、903上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备901、902、903可以是具有数据库性能监控屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器905可以是提供各种服务的服务器,例如对游客利用终端设备901、902、903所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的数据库性能监控方法一般由服务器905执行,相应地,计算装置一般设置于服务器905中。
应该理解,图9中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图10,其示出了适于用来实现本发明实施例的终端设备的计算机系统1000的结构示意图。图10示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图10所示,计算机系统1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM1003中,还存储有计算机系统1000操作所需的各种程序和数据。CPU1001、ROM1002以及RAM1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶数据库性能监控器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1007。通信部分1007经由诸如因特网的网络执行通信处理。驱动器1008也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1008上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1007从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括应用层、任务调度引擎和展示层。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务;执行采集诊断任务,以对测试平台的被测数据库进行扫描,进而更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
根据本发明实施例的技术方案,能够解决当前数据库性能问题诊断滞后、效率低下,且成本高、花费大量人力劳动、不同步、难收集的问题,从而达到自动化、及时、全面地诊断数据库性能问题。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (13)
1.一种数据库性能监控方法,其特征在于,包括:
接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务;
执行采集诊断任务,以对测试平台的被测数据库进行扫描,进而更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
2.根据权利要求1所述的方法,其特征在于,执行采集诊断任务之前,包括:
调用测试平台接口,获取被测数据库的连接串信息;
开启连接串信息中的网络访问关系,以与被测数据库连通。
3.根据权利要求2所述的方法,其特征在于,还包括:
调用存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接开启连接串信息中的网络访问关系;若否则将被测数据库的连接串信息存储至连接信息表中,再开启连接串信息中的网络访问关系。
4.根据权利要求1所述的方法,其特征在于,通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第一采集诊断任务;
执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:
响应于测试平台所述测试任务的触发,以执行第一采集诊断任务,进而对被测数据库进行实时扫描。
5.根据权利要求1所述的方法,其特征在于,通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务,包括:
识别采集诊断类型,通过预设的数据库性能检核规则生成第二采集诊断任务;
执行采集诊断任务,以对测试平台的被测数据库进行扫描,包括:
响应于测试平台所述测试任务的完成,以执行第二采集诊断任务,进而对被测数据库进行扫描。
6.根据权利要求1所述的方法,其特征在于,包括:
采用工厂模式生成所述测试任务对应的采集诊断任务。
7.根据权利要求6所述的方法,其特征在于,采用工厂模式生成所述测试任务对应的采集诊断任务,包括:
定义采集诊断任务的抽象父类;
定义任务工厂抽象接口,读取所述抽象父类的配置文件并加载,进而实例化采集诊断任务的抽象父类,以调用各诊断函数;
根据预设的数据库性能检核规则,生成多个采集诊断子任务,以继承实例化后的抽象父类,进而基于继承后的采集诊断子任务生成对应的采集诊断任务。
8.根据权利要求1-7任一所述的方法,其特征在于,导出对应的被测数据库扫描结果之后,包括:
生成诊断信息,以将所述诊断信息与采集诊断任务进行映射并存储。
9.一种数据库性能监控装置,其特征在于,包括:
应用层,用于接收测试平台发送的数据库扫描请求,获取所述数据库扫描请求中的测试任务,以通过预设的数据库性能检核规则生成所述测试任务对应的采集诊断任务;
任务调度引擎,用于执行采集诊断任务,以对测试平台的被测数据库进行扫描;
展示层,用于更新采集诊断任务状态,导出对应的被测数据库扫描结果,生成诊断信息并输出。
10.根据权利要求9所述的装置,其特征在于,应用层,还用于:
调用测试平台接口,获取被测数据库的连接串信息;
开启连接串信息中的网络访问关系,以与被测数据库连通。
11.根据权利要求10所述的装置,其特征在于,还包括:
管理层,用于存储连接信息表;
应用层,还用于调用管理层存储的连接信息表,判断是否与被测数据库的连接串信息匹配成功,若是则直接开启连接串信息中的网络访问关系;若否则将被测数据库的连接串信息存储至连接信息表中,再开启连接串信息中的网络访问关系。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
13.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783483.7A CN113434382A (zh) | 2021-07-12 | 2021-07-12 | 数据库性能监控方法、装置、电子设备及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783483.7A CN113434382A (zh) | 2021-07-12 | 2021-07-12 | 数据库性能监控方法、装置、电子设备及计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113434382A true CN113434382A (zh) | 2021-09-24 |
Family
ID=77759970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110783483.7A Pending CN113434382A (zh) | 2021-07-12 | 2021-07-12 | 数据库性能监控方法、装置、电子设备及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113434382A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117149888A (zh) * | 2023-11-01 | 2023-12-01 | 建信金融科技有限责任公司 | 数据处理的方法、装置、设备和计算机可读介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228452A (zh) * | 2017-12-28 | 2018-06-29 | 微梦创科网络科技(中国)有限公司 | 一种基于简单工厂模式的测试方法及测试装置 |
CN110825356A (zh) * | 2019-11-12 | 2020-02-21 | 东方电子股份有限公司 | 一种微服务开发框架及实时监控实现方法 |
CN111190073A (zh) * | 2019-12-31 | 2020-05-22 | 中国电力科学研究院有限公司 | 一种电网广域量测交互与搜索服务系统 |
CN111414351A (zh) * | 2020-03-20 | 2020-07-14 | 中国建设银行股份有限公司 | 一种MySQL数据库的性能诊断方法及装置 |
CN111831527A (zh) * | 2020-07-16 | 2020-10-27 | 中国建设银行股份有限公司 | 扫描数据库性能问题的方法、装置、电子设备、及介质 |
CN112068875A (zh) * | 2020-08-04 | 2020-12-11 | 广州太平洋电脑信息咨询有限公司 | 一种基于java动态加载实现线索过滤策略系统及方法 |
-
2021
- 2021-07-12 CN CN202110783483.7A patent/CN113434382A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228452A (zh) * | 2017-12-28 | 2018-06-29 | 微梦创科网络科技(中国)有限公司 | 一种基于简单工厂模式的测试方法及测试装置 |
CN110825356A (zh) * | 2019-11-12 | 2020-02-21 | 东方电子股份有限公司 | 一种微服务开发框架及实时监控实现方法 |
CN111190073A (zh) * | 2019-12-31 | 2020-05-22 | 中国电力科学研究院有限公司 | 一种电网广域量测交互与搜索服务系统 |
CN111414351A (zh) * | 2020-03-20 | 2020-07-14 | 中国建设银行股份有限公司 | 一种MySQL数据库的性能诊断方法及装置 |
CN111831527A (zh) * | 2020-07-16 | 2020-10-27 | 中国建设银行股份有限公司 | 扫描数据库性能问题的方法、装置、电子设备、及介质 |
CN112068875A (zh) * | 2020-08-04 | 2020-12-11 | 广州太平洋电脑信息咨询有限公司 | 一种基于java动态加载实现线索过滤策略系统及方法 |
Non-Patent Citations (1)
Title |
---|
王志海: "无线网络优化平台数据库性能优化设计思路", 《移动通信》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117149888A (zh) * | 2023-11-01 | 2023-12-01 | 建信金融科技有限责任公司 | 数据处理的方法、装置、设备和计算机可读介质 |
CN117149888B (zh) * | 2023-11-01 | 2024-02-13 | 建信金融科技有限责任公司 | 数据处理的方法、装置、设备和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
US20190095270A1 (en) | Tailoring diagnostic information in a multithreaded environment | |
CN109684188B (zh) | 测试方法和装置 | |
CN107644075B (zh) | 收集页面信息的方法和装置 | |
CN109977012B (zh) | 系统的联调测试方法、装置、设备及计算机可读存储介质 | |
CN114090113B (zh) | 数据源处理插件动态加载的方法、装置、设备及存储介质 | |
CN107368407B (zh) | 信息处理方法和装置 | |
CN113434382A (zh) | 数据库性能监控方法、装置、电子设备及计算机可读介质 | |
CN115964302A (zh) | 一种数据测试的方法和装置 | |
CN113360182B (zh) | 系统性能诊断的方法和装置 | |
CN115904527A (zh) | 数据处理方法、装置、设备及介质 | |
CN115202973A (zh) | 应用运行状态的确定方法、装置、电子设备和介质 | |
EP3832985A1 (en) | Method and apparatus for processing local hot spot, electronic device and storage medium | |
CN113918864A (zh) | 网站页面的测试方法、测试系统、装置、电子设备及介质 | |
CN113011858A (zh) | 审计项目配置、执行方法和装置 | |
CN112579428A (zh) | 接口测试的方法、装置、电子设备和存储介质 | |
CN113360365A (zh) | 一种流程测试方法和流程测试系统 | |
CN115190008B (zh) | 故障处理方法、故障处理装置、电子设备及存储介质 | |
CN117130945B (zh) | 一种测试方法和装置 | |
CN114840435A (zh) | 数据流向的确定方法、装置、设备、存储介质和程序产品 | |
CN113778476A (zh) | 更新移动应用版本的方法、装置、设备和计算机可读介质 | |
CN116701152A (zh) | 数据库性能确定方法、装置、设备及介质 | |
CN116414685A (zh) | 一种基于云真机平台的测试管理方法和装置 | |
CN115629983A (zh) | 测试用例集生成方法、装置、设备、介质 | |
CN116467195A (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 |