本发明涉及互联网,尤其涉及一种系统性能诊断方法、装置及相关设备。
背景技术:
1、随着互联网技术(internet technology,it)的发展,对业务系统的性能要求也越来越高。相关技术中,业务系统包括多个子系统,当业务系统出现性能故障时,难以确定到底是哪个子系统出现异常,因此一般通过对比系统内核差异,重做系统或升级系统等方式来处理性能故障。然而,由于难以确定出现异常的子系统,需要对整个业务系统进行维护,导致性能诊断过程繁琐,效率低下。
2、可见,现有技术中存在系统性能诊断效率较低的问题。
技术实现思路
1、本发明实施例提供了一种系统性能诊断方法、装置及相关设备,以解决现有技术中系统性能诊断效率较低的问题。
2、为解决上述技术问题,本发明是这样实现的:
3、第一方面,本发明实施例提供了一种系统性能诊断方法,应用于服务器,所述方法包括:
4、调用容器编排工具读取控制组cgroup子系统中每一子系统的属性文件;
5、获取所述cgroup子系统中每一子系统的属性文件的读取时长;
6、在所述cgroup子系统中确定第一子系统,所述第一子系统的属性文件的读取时长大于预设时长;
7、输出基于所述第一子系统生成的第一诊断结果。
8、可选地,在所述获取所述cgroup子系统中每一子系统的属性文件的读取时长之后,所述方法还包括:
9、在所述cgroup子系统中确定第二子系统,所述第二子系统的属性文件的读取时长小于或等于所述预设时长;
10、调用所述容器编排工具多次读取所述第二子系统的属性文件,并采集所述第二子系统的性能数据;
11、输出基于所述性能数据生成的第二诊断结果。
12、可选地,所述调用所述容器编排工具多次读取所述第二子系统的属性文件,并采集所述第二子系统的性能数据,包括:
13、根据所述第二子系统的属性文件对应的计算机语言,在所述容器编排工具中确定与所述计算机语言匹配的性能采集模块;
14、利用所述性能采集模块对所述第二子系统的属性文件进行多轮次的文件运行处理,以采集运行所述第二子系统的属性文件时的压测性能数据,所述压测性能数据为所述第二子系统的性能数据。
15、可选地,所述输出基于所述性能数据生成的第二诊断结果,包括:
16、基于所述性能数据生成对应的性能火焰图;
17、输出所述性能火焰图。
18、可选地,所述调用容器编排工具读取控制组cgroup子系统中每一子系统的属性文件,包括:
19、调用k8s读取所述cgroup子系统中每一子系统的属性文件。
20、可选地,所述cgroup子系统包括以下至少一项:
21、cpu子系统,用于管理和限制进程对中央处理器cpu资源的使用;
22、cpuacct子系统,用于监控cpu资源使用情况;
23、cpuset子系统,用于控制将进程绑定至cpu核心和内存节点上;
24、memory子系统,用于控制进程的内存使用;
25、blkio子系统,用于管理读/写速度和访问的优先级。
26、第二方面,本发明实施例提供了一种系统性能诊断装置,应用于服务器,所述装置包括:
27、第一调用模块,用于调用容器编排工具读取控制组cgroup子系统中每一子系统的属性文件;
28、获取模块,用于获取所述cgroup子系统中每一子系统的属性文件的读取时长;
29、第一确定模块,用于在所述cgroup子系统中确定第一子系统,所述第一子系统的属性文件的读取时长大于预设时长;
30、第一输出模块,用于输出基于所述第一子系统生成的第一诊断结果。
31、第三方面,本发明实施例提供了一种电子设备,包括收发机和处理器,
32、所述处理器,用于调用容器编排工具读取控制组cgroup子系统中每一子系统的属性文件;
33、所述收发机,用于获取所述cgroup子系统中每一子系统的属性文件的读取时长;
34、所述处理器,还用于在所述cgroup子系统中确定第一子系统,所述第一子系统的属性文件的读取时长大于预设时长;
35、所述处理器,还用于输出基于所述第一子系统生成的第一诊断结果。
36、第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的系统性能诊断方法的步骤。
37、第五方面,本发明实施例提供了一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现如第一方面所述的系统性能诊断方法的步骤。
38、本发明实施例中,通过调用容器编排工具读取cgroup子系统中每一子系统的属性文件,以获取各子系统的属性文件的读取时长,然后基于对各个子系统的属性文件的读取时长进行性能诊断,可以在多个子系统中确定存在读取性能瓶颈的第一子系统,并输出基于第一子系统生成的第一诊断结果。这样,简化了性能诊断过程,缩短了在多个子系统中排查异常子系统的性能诊断时间,从而提升了系统性能诊断效率。
1.一种系统性能诊断方法,其特征在于,应用于服务器,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述获取所述cgroup子系统中每一子系统的属性文件的读取时长之后,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述调用所述容器编排工具多次读取所述第二子系统的属性文件,并采集所述第二子系统的性能数据,包括:
4.根据权利要求2所述的方法,其特征在于,所述输出基于所述性能数据生成的第二诊断结果,包括:
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述调用容器编排工具读取控制组cgroup子系统中每一子系统的属性文件,包括:
6.根据权利要求1至4中任一项所述的方法,其特征在于,所述cgroup子系统包括以下至少一项:
7.一种系统性能诊断装置,其特征在于,应用于服务器,所述装置包括:
8.一种电子设备,其特征在于,包括收发机和处理器,
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的系统性能诊断方法的步骤。
10.一种计算机程序产品,其特征在于,包括计算机指令,该计算机指令被处理器执行时实现如权利要求1至6中任一项所述的系统性能诊断方法的步骤。