admin 管理员组

文章数量: 1086019


2024年12月24日发(作者:round函数表示什么意思)

(19)中华人民共和国国家知识产权局

(12)发明专利说明书

(21)申请号 CN2.4

(22)申请日 2018.03.06

(71)申请人 平安科技(深圳)有限公司

地址 518000 广东省深圳市福田区八卦岭工业区平安大厦六楼

(72)发明人 王静

(74)专利代理机构 深圳市沃德知识产权代理事务所(普通合伙)

代理人 于志光

(51)

(10)申请公布号 CN 108566314 A

(43)申请公布日 2018.09.21

权利要求说明书 说明书 幅图

(54)发明名称

电子装置、集群环境下状态信息的

获取方法及存储介质

(57)摘要

本发明涉及一种电子装置、集群环

境下状态信息的获取方法及存储介质,该

方法包括:在客户端连接一个或多个服务

器后,在客户端界面上显示供用户选择的

各个服务器、数据库和/或JAVA虚拟机;

确定用户在客户端界面上选择的服务器、

数据库和/或JAVA虚拟机,基于所选择数

据库和/或JAVA虚拟机调用预定的对应的

工具,基于所选择的服务器调用预定的对

应的命令,基于该工具和/或命令,获取服

务器的状态信息、数据库的状态信息和/或

JAVA虚拟机的状态信息;将所获取的服

务器的状态信息、数据库的状态信息和/或

JAVA虚拟机的状态信息返回至客户端界

面上进行展示。本发明能够通过客户端便

捷地获取各项状态信息。

法律状态

法律状态公告日

法律状态信息

发明专利申请公布后的驳回

2022-09-02

IPC(主分类):H04L12/26专利申

请号:2申请公布

日:20180921

法律状态

发明专利申请公布后

的驳回

权 利 要 求 说 明 书

1.一种电子装置,其特征在于,所述电子装置包括存储器及与所述存储器连接的处理

器,所述存储器中存储有可在所述处理器上运行的处理系统,所述处理系统被所述处

理器执行时实现如下步骤:

连接步骤,在客户端连接一个或多个服务器后,在客户端界面上显示供用户选择的各

个服务器、数据库和/或JAVA虚拟机;

获取步骤,确定用户在客户端界面上选择的服务器、数据库和/或JAVA虚拟机,基于

所选择数据库和/或JAVA虚拟机调用预定的对应的工具,基于所选择的服务器调用

预定的对应的命令,基于该工具和/或命令,获取服务器的状态信息、数据库的状态信

息和/或JAVA虚拟机的状态信息;

展示步骤,将所获取的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的

状态信息返回至客户端界面上进行展示。

2.根据权利要求1所述的电子装置,其特征在于,所述获取步骤,具体包括:

若所选择的是服务器,则调用预定的LINUX命令并发送该LINUX命令至服务器,接

收服务器基于该预定的LINUX命令返回的服务器的状态信息,所述服务器的状态信

息至少包括CPU信息、网卡信息、磁盘信息以及内存消耗信息;

若所选择的是数据库,则调用JDBC驱动包连接该数据库,在成功连接该数据库后,向

该数据库发送SESSION信息命令,接收基于该SESSION信息命令返回的与数据库

连接的应用的数量;

若所选择的是JAVA虚拟机,则调用预定的JAVA虚拟机工具获取JAVA虚拟机的

状态信息,所述JAVA虚拟机的状态信息至少包括当前在JAVA虚拟机中运行的程

序、JAVA虚拟机的各项参数及运行数据。

3.根据权利要求1或2所述的电子装置,其特征在于,所述展示步骤,具体包括:

将服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息分别转化

为图形化的形式,在客户端界面上展示图形化的服务器的状态信息、数据库的状态

信息和/或JAVA虚拟机的状态信息。

4.根据权利要求3所述的电子装置,其特征在于,所述处理系统被所述处理器执行时,

还实现如下步骤:

在进行性能压测时,根据客户端界面上展示的各项图形化的服务器的状态信息、数

据库的状态信息和/或JAVA虚拟机的状态信息分析是否达到对应的预先设置的上

限值,并在达到对应的预先设置的上限值时,分析当前是否出现异常情况;

根据分析结果调整所述上限值,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警。

5.一种集群环境下状态信息的获取方法,其特征在于,所述集群环境下状态信息的获

取方法包括:

S1,在客户端连接一个或多个服务器后,在客户端界面上显示供用户选择的各个服务

器、数据库和/或JAVA虚拟机;

S2,确定用户在客户端界面上选择的服务器、数据库和/或JAVA虚拟机,基于所选择

数据库和/或JAVA虚拟机调用预定的对应的工具,基于所选择的服务器调用预定的

对应的命令,基于该工具和/或命令,获取服务器的状态信息、数据库的状态信息和/

或JAVA虚拟机的状态信息;

S3,将所获取的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信

息返回至客户端界面上进行展示。

6.根据权利要求5所述的集群环境下状态信息的获取方法,其特征在于,所述步骤S2,

具体包括:

若所选择的是服务器,则调用预定的LINUX命令并发送该LINUX命令至服务器,接

收服务器基于该预定的LINUX命令返回的服务器的状态信息,所述服务器的状态信

息至少包括CPU信息、网卡信息、磁盘IO信息以及内存消耗信息;

若所选择的是数据库,则调用JDBC驱动包连接该数据库,在成功连接该数据库后,向

该数据库发送SESSION信息命令,接收基于该SESSION信息命令返回的与数据库

连接的应用的数量;

若所选择的是JAVA虚拟机,则调用预定的JAVA虚拟机工具获取JAVA虚拟机的

状态信息,所述JAVA虚拟机的状态信息至少包括当前在JAVA虚拟机中运行的程

序、JAVA虚拟机的各项参数及运行数据。

7.根据权利要求5或6所述的集群环境下状态信息的获取方法,其特征在于,所述步

骤S3,具体包括:

将服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息分别转化

为图形化的形式,在客户端界面上展示图形化的服务器的状态信息、数据库的状态

信息和/或JAVA虚拟机的状态信息。

8.根据权利要求7所述的集群环境下状态信息的获取方法,其特征在于,所述步骤S3

之后,还包括:

在进行性能压测时,根据客户端界面上展示的各项图形化的服务器的状态信息、数

据库的状态信息和/或JAVA虚拟机的状态信息分析是否达到对应的预先设置的上

限值,并在达到对应的预先设置的上限值时,分析当前是否出现异常情况;

根据分析结果调整所述上限值,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警。

9.根据权利要求7所述的集群环境下状态信息的获取方法,其特征在于,所述步骤S3,

进一步包括:在客户端界面上以不同的颜色展示图形化的服务器的状态信息、数据

库的状态信息和/或JAVA虚拟机的状态信息。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有处理系

统,所述处理系统被处理器执行时实现如权利要求5至9中任一项所述的集群环境

下状态信息的获取方法的步骤。

说 明 书

技术领域

本发明涉及通信技术领域,尤其涉及一种电子装置、集群环境下状态信息的获取方

法及存储介质。

背景技术

目前,运营、测试或开发人员在进行性能压测时,需要获得数据库状态信息、服务器

状态信息和/或JAVA虚拟机(JVM)状态信息,例如CPU、网卡、内存、磁盘、数据

库状态、线程等的运行情况,此时通常需要登录到相应的服务器,通过命令来逐个查

询,获得的信息十分零散,操作较繁琐,无法快速获得全面的状态信息,导致在排查、分

析应用问题时耗时耗力,不能快速应对、解决突发故障。

发明内容

本发明的目的在于提供一种电子装置、集群环境下状态信息的获取方法及存储介质,

旨在通过客户端便捷地获取各项状态信息,为快速解决突发故障提供有力保障。

为实现上述目的,本发明提供一种电子装置,所述电子装置包括存储器及与所述存储

器连接的处理器,所述存储器中存储有可在所述处理器上运行的处理系统,所述处理

系统被所述处理器执行时实现如下步骤:

连接步骤,在客户端连接一个或多个服务器后,在客户端界面上显示供用户选择的各

个服务器、数据库和/或JAVA虚拟机;

获取步骤,确定用户在客户端界面上选择的服务器、数据库和/或JAVA虚拟机,基于

所选择数据库和/或JAVA虚拟机调用预定的对应的工具,基于所选择的服务器调用

预定的对应的命令,基于该工具和/或命令,获取服务器的状态信息、数据库的状态信

息和/或JAVA虚拟机的状态信息;

展示步骤,将所获取的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的

状态信息返回至客户端界面上进行展示。

优选地,所述获取步骤,具体包括:

若所选择的是服务器,则调用预定的LINUX命令并发送该LINUX命令至服务器,接

收服务器基于该预定的LINUX命令返回的服务器的状态信息,所述服务器的状态信

息至少包括CPU信息、网卡信息、磁盘信息以及内存消耗信息;

若所选择的是数据库,则调用JDBC驱动包连接该数据库,在成功连接该数据库后,向

该数据库发送SESSION信息命令,接收基于该SESSION信息命令返回的与数据库

连接的应用的数量;

若所选择的是JAVA虚拟机,则调用预定的JAVA虚拟机工具获取JAVA虚拟机的

状态信息,所述JAVA虚拟机的状态信息至少包括当前在JAVA虚拟机中运行的程

序、JAVA虚拟机的各项参数及运行数据。

优选地,所述展示步骤,具体包括:

将服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息分别转化

为图形化的形式,在客户端界面上展示图形化的服务器的状态信息、数据库的状态

信息和/或JAVA虚拟机的状态信息。

优选地,所述处理系统被所述处理器执行时,还实现如下步骤:

在进行性能压测时,根据客户端界面上展示的各项图形化的服务器的状态信息、数

据库的状态信息和/或JAVA虚拟机的状态信息分析是否达到对应的预先设置的上

限值,并在达到对应的预先设置的上限值时,分析当前是否出现异常情况;

根据分析结果调整所述上限值,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警。

为实现上述目的,本发明还提供一种集群环境下状态信息的获取方法,所述集群环境

下状态信息的获取方法包括:

S1,在客户端连接一个或多个服务器后,在客户端界面上显示供用户选择的各个服务

器、数据库和/或JAVA虚拟机;

S2,确定用户在客户端界面上选择的服务器、数据库和/或JAVA虚拟机,基于所选择

数据库和/或JAVA虚拟机调用预定的对应的工具,基于所选择的服务器调用预定的

对应的命令,基于该工具和/或命令,获取服务器的状态信息、数据库的状态信息和/

或JAVA虚拟机的状态信息;

S3,将所获取的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信

息返回至客户端界面上进行展示。

优选地,所述步骤S2,具体包括:

若所选择的是服务器,则调用预定的LINUX命令并发送该LINUX命令至服务器,接

收服务器基于该预定的LINUX命令返回的服务器的状态信息,所述服务器的状态信

息至少包括CPU信息、网卡信息、磁盘IO信息以及内存消耗信息;

若所选择的是数据库,则调用JDBC驱动包连接该数据库,在成功连接该数据库后,向

该数据库发送SESSION信息命令,接收基于该SESSION信息命令返回的与数据库

连接的应用的数量;

若所选择的是JAVA虚拟机,则调用预定的JAVA虚拟机工具获取JAVA虚拟机的

状态信息,所述JAVA虚拟机的状态信息至少包括当前在JAVA虚拟机中运行的程

序、JAVA虚拟机的各项参数及运行数据。

优选地,所述步骤S3,具体包括:

将服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息分别转化

为图形化的形式,在客户端界面上展示图形化的服务器的状态信息、数据库的状态

信息和/或JAVA虚拟机的状态信息。

优选地,所述步骤S3之后,还包括:

在进行性能压测时,根据客户端界面上展示的各项图形化的服务器的状态信息、数

据库的状态信息和/或JAVA虚拟机的状态信息分析是否达到对应的预先设置的上

限值,并在达到对应的预先设置的上限值时,分析当前是否出现异常情况;

根据分析结果调整所述上限值,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警。

优选地,所述步骤S3,进一步包括:在客户端界面上以不同的颜色展示图形化的服务

器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有处理系

统,所述处理系统被处理器执行时实现上述的集群环境下状态信息的获取方法的步

骤。

本发明的有益效果是:本发明使用一个客户端一次性连接一个或者多个服务器,客户

端通过调用LINUX命令和/或JAVA工具,向服务器发送命令,接收服务器的返回的

服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息进行展示,使

用一个客户端就能够快速、全面监测服务器的状态信息、数据库的状态信息和/或

JAVA虚拟机的状态信息,操作简便,为快速解决突发故障提供有力保障。

附图说明

图1为本发明各个实施例一可选的应用环境示意图;

图2为本发明集群环境下状态信息的获取方法一实施例的流程示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本

发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,

并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创

造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理

解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定

有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实

施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为

基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合

不存在,也不在本发明要求的保护范围之内。

参阅图1所示,是本发明集群环境下状态信息的获取方法的较佳实施例的应用环境

示意图。该应用环境示意图包括电子装置1及一个或多个服务器。电子装置1可以

通过网络、近场通信技术等适合的技术与一个或多个服务器进行数据交互,各个服

务器中安装有数据库和/或JAVA虚拟机。

电子装置1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息

处理的设备。所述电子装置1可以是计算机、也可以是单个网络服务器、多个网络

服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其

中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计

算机。

在本实施例中,电子装置1可包括,但不仅限于,可通过系统总线相互通信连接的存储

器11、处理器12、网络接口13,存储器11存储有可在处理器12上运行的处理系统。

需要指出的是,图1仅示出了具有组件11-13的电子装置1,但是应理解的是,并不要

求实施所有示出的组件,可以替代的实施更多或者更少的组件。

其中,存储器11包括内存及至少一种类型的可读存储介质。内存为电子装置1的运

行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或

DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储

器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、

磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质

可以是电子装置1的内部存储单元,例如该电子装置1的硬盘;在另一些实施例中,该

非易失性存储介质也可以是电子装置1的外部存储设备,例如电子装置1上配备的

插接式硬盘,智能存储卡(SmartMediaCard,SMC),安全数字(SecureDigital,SD)卡,闪存

卡(FlashCard)等。本实施例中,存储器11的可读存储介质通常用于存储安装于电子

装置1的操作系统和各类应用软件,例如存储本发明一实施例中的处理系统的程序

代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。

所述处理器12在一些实施例中可以是中央处理器(CentralProcessingUnit,CPU)、控

制器、微控制器、微处理器或其他数据处理芯片。该处理器12通常用于控制所述

电子装置1的总体操作,例如执行与所述一个或多个服务器进行数据交互或者通信

相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储

的程序代码或者处理数据,例如运行处统理系等。

所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在

所述电子装置1与其他电子设备之间建立通信连接。本实施例中,网络接口13主要

用于将电子装置1与一个或多个服务器相连,在电子装置1与一个或多个服务器之

间建立数据传输通道和通信连接。

所述处理系统存储在存储器11中,包括至少一个存储在存储器11中的计算机可读

指令,该至少一个计算机可读指令可被处理器器12执行,以实现本申请各实施例的方

法;以及,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同

的逻辑模块。

在一实施例中,上述处理系统被所述处理器12执行时实现如下步骤:

连接步骤,在客户端连接一个或多个服务器后,在客户端界面上显示供用户选择的各

个服务器、数据库和/或JAVA虚拟机;

其中,客户端安装在电子装置1中,在客户端与一个或多个服务器连接之前,在客户端

的登录界面上输入一个或多个服务器的登录信息进行登录,登录信息包括服务器IP、

端口、登录用户名、登录密码等。登录后,客户端与一个或多个服务器连接,并在客

户端界面上显示可供用户勾选的服务器、数据库和/或JAVA虚拟机,以获取所勾选

的服务器、数据库和/或JAVA虚拟机的状态信息。

获取步骤,确定用户在客户端界面上选择的服务器、数据库和/或JAVA虚拟机,基于

所选择数据库和/或JAVA虚拟机调用预定的对应的工具,基于所选择的服务器调用

预定的对应的命令,基于该工具和/或命令,获取服务器的状态信息、数据库的状态信

息和/或JAVA虚拟机的状态信息;

本实施例中,用户可以选择查看单个的服务器、数据库或JAVA虚拟机的状态信息,

也可以查看多个服务器、数据库和/或JAVA虚拟机的状态信息。在确定用户在客

户端界面上选择的服务器、数据库和/或JAVA虚拟机之后,在一实施例中,若所选择

的是服务器,则客户端调用预定的LINUX命令并发送该LINUX命令至服务器,接收

服务器基于该预定的LINUX命令返回的服务器的状态信息,其中,所述服务器的状

态信息至少包括CPU信息、网卡信息、磁盘信息以及内存消耗信息。

在一实施例中,预定的LINUX命令至少包括iostat命令、iotop命令、pidstat命令,其

中,通过iostat命令可以查看CPU使用情况、网卡信息、磁盘使用情况等。iotop命

令、pidstat命令反映服务器的进程级统计,其中,iotop命令是一个用来监视磁盘IO

使用状况的工具,可监测到哪一个程序(例如QQ、微信)使用的磁盘IO的情况。

Pidstat命令主要用于监控全部或指定进程占用系统资源的情况,如CPU信息、内存

消耗、设备IO、任务切换、线程等。客户端接收基于上述的LINUX命令返回的状

态信息,分析并获取CPU、网卡、磁盘IO以及内存消耗等情况。若所选择的是数据

库,则客户端调用java连接工具JDBC(JavaDataBaseConnectivity,java数据库连接)驱

动包连接该数据库,以判断数据库是否能够提供正常服务,在成功连接该数据库后,向

该数据库发送SESSION信息命令,接收基于该SESSION信息命令返回的与数据库

连接的应用的数量,数据库的状态信息至少包括数据库是否可以正常连接、与数据

库连接的应用的数量。其中,监测的数据库可以是一个或多个,实现主流数据库的集

成,例如:ORACLE数据库、MYSQL数据库及PG数据库等。

若所选择的是JAVA虚拟机,则客户端调用预定的JAVA虚拟机工具获取JAVA虚

拟机的状态信息,所述JAVA虚拟机的状态信息至少包括当前在JAVA虚拟机中运

行的程序、JAVA虚拟机的各项参数及运行数据,运行数据包括内存数据、垃圾收

集数据、装载数据、JIT编译数据、线程锁数据等等。

在一实施例中,预定的JAVA虚拟机工具至少包括:jstat虚拟机统计信息监视工具,用

以利用JAVA虚拟机内建的指令对Java应用程序的资源和性能进行实时的命令行

的监控,包括了对Heapsize虚拟机内存和垃圾回收状况的监控;jps虚拟机进程状况

工具,用以显示当前系统的java进程情况及其id号;jinfoJava配置信息工具,用于输出

JAVA系统参数及命令行参数;jmapJava内存映像工具,用以输出所有内存中对象的

工具;jstackJava堆栈跟踪工具:用以打印出给定的java进程ID或corefile或远程调试

服务的Java堆栈信息。

展示步骤,将所获取的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的

状态信息返回至客户端界面上进行展示。

本实施例中,客户端通过调用预定的工具和/或命令,一次性获取到用户所需的服务器

的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息,最终将服务器的状

态信息、数据库的状态信息和/或JAVA虚拟机的状态信息展示在客户端界面上,供

用户进行分析以进行性能压测,使用一个客户端就能够全面监测服务器的状态信息、

数据库的状态信息和/或JAVA虚拟机的状态信息。

在一优选的实施例中,该展示步骤,具体包括:将服务器的状态信息、数据库的状态信

息和/或JAVA虚拟机的状态信息分别转化为图形化的形式,在客户端界面上展示图

形化的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息。

其中,该图形化的形式包括多种,可以是单一的图形化形式,也可以是多种图形的结合,

该图形包括饼图、折线图、柱形图等等,能够更加直观地展示服务器的状态信息、

数据库的状态信息和/或JAVA虚拟机的状态信息,为用户提供直观有效实时的分析

依据,为快速解决突发的故障提供有力保障。进一步地,可以在客户端界面上以不同

的颜色展示图形化的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的

状态信息,进一步提供直观有效实时的分析依据。

在一优选的实施例中,所述处理系统被所述处理器执行时,还实现如下步骤:

在进行性能压测时,根据客户端界面上展示的各项图形化的服务器的状态信息、数

据库的状态信息和/或JAVA虚拟机的状态信息分析是否达到对应的预先设置的上

限值,并在达到对应的预先设置的上限值时,分析当前是否出现异常情况;

根据分析结果调整所述上限值,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警。

本实施例中,可以预先制定每一项服务器的状态信息、数据库的状态信息和/或

JAVA虚拟机的状态信息的上限值,通过性能压测度量系统的可扩展性和性能,确定

问题所在以及优化系统性能,通过获知服务器、数据库、JAVA虚拟机的承受限度,

以便更好地配置服务器、数据库、JAVA虚拟机。例如对于服务器的状态信息,设

置CPU使用率为80%、内存消耗为85%、磁盘使用率为50%等,当CPU使用率达

到80%,或者内存消耗达到85%,或者磁盘使用率达到50%时,分析分析当前是否由于

CPU使用率或者内存消耗或者磁盘使用率而出现异常情况,如果没有出现异常,则可

进一步对这些状态信息的上限值进行上调,例如调整CPU使用率为85%、内存消耗

为90%、磁盘使用率为60%等,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警;如果出现异常,则可进一步对这些状态信息的上限值进行下

调,例如调整CPU使用率为75%、内存消耗为80%、磁盘使用率为45%等,以调整

后的上限值作为性能瓶颈值,供在下次达到该性能瓶颈值时发出预警。

与现有技术相比,本发明使用一个客户端一次性连接一个或者多个服务器,客户端通

过调用LINUX命令和/或JAVA工具,向服务器发送命令,接收服务器的返回的服务

器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息进行展示,使用一

个客户端就能够快速、全面监测服务器的状态信息、数据库的状态信息和/或

JAVA虚拟机的状态信息,操作简便,为快速解决突发故障提供有力保障。

如图2所示,图2为本发明集群环境下状态信息的获取方法一实施例的流程示意图,

该集群环境下状态信息的获取方法包括以下步骤:

步骤S1,在客户端连接一个或多个服务器后,在客户端界面上显示供用户选择的各个

服务器、数据库和/或JAVA虚拟机;

其中,客户端安装在电子装置1中,在客户端与一个或多个服务器连接之前,在客户端

的登录界面上输入一个或多个服务器的登录信息进行登录,登录信息包括服务器IP、

端口、登录用户名、登录密码等。登录后,客户端与一个或多个服务器连接,并在客

户端界面上显示可供用户勾选的服务器、数据库和/或JAVA虚拟机,以获取所勾选

的服务器、数据库和/或JAVA虚拟机的状态信息。

步骤S2,确定用户在客户端界面上选择的服务器、数据库和/或JAVA虚拟机,基于

所选择数据库和/或JAVA虚拟机调用预定的对应的工具,基于所选择的服务器调用

预定的对应的命令,基于该工具和/或命令,获取服务器的状态信息、数据库的状态信

息和/或JAVA虚拟机的状态信息;

本实施例中,用户可以选择查看单个的服务器、数据库或JAVA虚拟机的状态信息,

也可以查看多个服务器、数据库和/或JAVA虚拟机的状态信息。在确定用户在客

户端界面上选择的服务器、数据库和/或JAVA虚拟机之后,在一实施例中,若所选择

的是服务器,则客户端调用预定的LINUX命令并发送该LINUX命令至服务器,接收

服务器基于该预定的LINUX命令返回的服务器的状态信息,其中,所述服务器的状

态信息至少包括CPU信息、网卡信息、磁盘信息以及内存消耗信息。

在一实施例中,预定的LINUX命令至少包括iostat命令、iotop命令、pidstat命令,其

中,通过iostat命令可以查看CPU使用情况、网卡信息、磁盘使用情况等。iotop命

令、pidstat命令反映服务器的进程级统计,其中,iotop命令是一个用来监视磁盘IO

使用状况的工具,可监测到哪一个程序(例如QQ、微信)使用的磁盘IO的情况。

Pidstat命令主要用于监控全部或指定进程占用系统资源的情况,如CPU信息、内存

消耗、设备IO、任务切换、线程等。客户端接收基于上述的LINUX命令返回的状

态信息,分析并获取CPU、网卡、磁盘IO以及内存消耗等情况。

若所选择的是数据库,则客户端调用java连接工具

JDBC(JavaDataBaseConnectivity,java数据库连接)驱动包连接该数据库,以判断数据

库是否能够提供正常服务,在成功连接该数据库后,向该数据库发送SESSION信息

命令,接收基于该SESSION信息命令返回的与数据库连接的应用的数量,数据库的

状态信息至少包括数据库是否可以正常连接、与数据库连接的应用的数量。其中,

监测的数据库可以是一个或多个,实现主流数据库的集成,例如:ORACLE数据库、

MYSQL数据库及PG数据库等。

若所选择的是JAVA虚拟机,则客户端调用预定的JAVA虚拟机工具获取JAVA虚

拟机的状态信息,所述JAVA虚拟机的状态信息至少包括当前在JAVA虚拟机中运

行的程序、JAVA虚拟机的各项参数及运行数据,运行数据包括内存数据、垃圾收

集数据、装载数据、JIT编译数据、线程锁数据等等。

在一实施例中,预定的JAVA虚拟机工具至少包括:jstat虚拟机统计信息监视工具,用

以利用JAVA虚拟机内建的指令对Java应用程序的资源和性能进行实时的命令行

的监控,包括了对Heapsize虚拟机内存和垃圾回收状况的监控;jps虚拟机进程状况

工具,用以显示当前系统的java进程情况及其id号;jinfoJava配置信息工具,用于输出

JAVA系统参数及命令行参数;jmapJava内存映像工具,用以输出所有内存中对象的

工具;jstackJava堆栈跟踪工具:用以打印出给定的java进程ID或corefile或远程调试

服务的Java堆栈信息。

步骤S3,将所获取的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状

态信息返回至客户端界面上进行展示。

本实施例中,客户端通过调用预定的工具和/或命令,一次性获取到用户所需的服务器

的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息,最终将服务器的状

态信息、数据库的状态信息和/或JAVA虚拟机的状态信息展示在客户端界面上,供

用户进行分析以进行性能压测,使用一个客户端就能够全面监测服务器的状态信息、

数据库的状态信息和/或JAVA虚拟机的状态信息。

在一优选的实施例中,该展示步骤,具体包括:将服务器的状态信息、数据库的状态信

息和/或JAVA虚拟机的状态信息分别转化为图形化的形式,在客户端界面上展示图

形化的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息。

其中,该图形化的形式包括多种,可以是单一的图形化形式,也可以是多种图形的结合,

该图形包括饼图、折线图、柱形图等等,能够更加直观地展示服务器的状态信息、

数据库的状态信息和/或JAVA虚拟机的状态信息,为用户提供直观有效实时的分析

依据,为快速解决突发的故障提供有力保障。进一步地,可以在客户端界面上以不同

的颜色展示图形化的服务器的状态信息、数据库的状态信息和/或JAVA虚拟机的

状态信息,进一步提供直观有效实时的分析依据。

在一优选的实施例中,在上述实施例的基础上,所述步骤S3之后,还包括:

在进行性能压测时,根据客户端界面上展示的各项图形化的服务器的状态信息、数

据库的状态信息和/或JAVA虚拟机的状态信息分析是否达到对应的预先设置的上

限值,并在达到对应的预先设置的上限值时,分析当前是否出现异常情况;

根据分析结果调整所述上限值,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警。

本实施例中,可以预先制定每一项服务器的状态信息、数据库的状态信息和/或

JAVA虚拟机的状态信息的上限值,通过性能压测度量系统的可扩展性和性能,确定

问题所在以及优化系统性能,通过获知服务器、数据库、JAVA虚拟机的承受限度,

以便更好地配置服务器、数据库、JAVA虚拟机。例如对于服务器的状态信息,设

置CPU使用率为80%、内存消耗为85%、磁盘使用率为50%等,当CPU使用率达

到80%,或者内存消耗达到85%,或者磁盘使用率达到50%时,分析分析当前是否由于

CPU使用率或者内存消耗或者磁盘使用率而出现异常情况,如果没有出现异常,则可

进一步对这些状态信息的上限值进行上调,例如调整CPU使用率为85%、内存消耗

为90%、磁盘使用率为60%等,以调整后的上限值作为性能瓶颈值,供在下次达到该

性能瓶颈值时发出预警;如果出现异常,则可进一步对这些状态信息的上限值进行下

调,例如调整CPU使用率为75%、内存消耗为80%、磁盘使用率为45%等,以调整

后的上限值作为性能瓶颈值,供在下次达到该性能瓶颈值时发出预警。

与现有技术相比,本发明使用一个客户端一次性连接一个或者多个服务器,客户端通

过调用LINUX命令和/或JAVA工具,向服务器发送命令,接收服务器的返回的服务

器的状态信息、数据库的状态信息和/或JAVA虚拟机的状态信息进行展示,使用一

个客户端就能够快速、全面监测服务器的状态信息、数据库的状态信息和/或

JAVA虚拟机的状态信息,操作简便,为快速解决突发故障提供有力保障。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有处理系

统,所述处理系统被处理器执行时实现上述的集群环境下状态信息的获取方法的步

骤。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法

可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况

下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现

有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在

一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设

备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述

的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说

明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的

技术领域,均同理包括在本发明的专利保护范围内。


本文标签: 信息 状态 服务器