服务器探测方法、装置、设备及存储介质与流程

未命名 08-02 阅读:93 评论:0


1.本发明涉及监控技术领域,尤其涉及一种服务器探测方法、装置、设备及存储介质。


背景技术:

2.在金融科技领域中,为了提供高可用服务,数据库集群服务应运而生。在数据库集群服务中,通过设置主备数据库服务器向客户端提供数据服务。在数据库服务器运行时,可能会因为高可用架构出现硬件问题,而导致主备数据库服务器无法正常切换,使得同一个服务在主备数据库服务器同时启动而占用同一个vip的地址,从而造成主备数据库服务器的数据不一致。


技术实现要素:

3.鉴于以上内容,有必要提供一种服务器探测方法、装置、设备及存储介质,能够解决主备数据库服务器同时占用同一个vip地址而导致数据不一致的技术问题。
4.一方面,本发明提出一种服务器探测方法,所述服务器探测方法包括:
5.响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器;
6.从配置管理数据库中采集所述待测服务器的带外地址;
7.根据所述带外地址获取所述待测服务器的执行数据包;
8.根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果;
9.若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。
10.根据本发明优选实施例,所述服务器探测方法还包括:
11.统计指示所述执行数据包运行成功的执行结果所对应的待测服务器的服务器数量;
12.若所述服务器数量有多个,则指示所述执行数据包运行成功的执行结果所对应的待测服务器确定为待处理服务器;
13.获取所述数据库集群中的所有数据库服务器;
14.基于所述所有数据库服务器对所述多个待处理服务器的投票结果,识别出目标服务器;
15.关闭除所述目标服务器外的所有待处理服务器。
16.根据本发明优选实施例,所述基于所述服务器探测请求识别出数据库集群中的待测服务器包括:
17.从所述服务器探测请求的请求报文中提取集群标识;
18.基于所述集群标识定位出所述数据库集群;
19.基于所述服务器探测请求的请求时刻,采集每个数据库服务器的请求数据包;
20.基于所述请求数据包的请求信息,从所述所有数据库服务器中识别出所述待测服务器。
21.根据本发明优选实施例,所述从配置管理数据库中采集所述待测服务器的带外地址包括:
22.基于带外标识,从所述配置管理数据库中定位出带外管理文件;
23.基于所述待测服务器的物理信息及所述带外管理文件的文件信息,生成查询语句;
24.调用所述配置管理数据库的应用接口,运行所述查询语句,得到所述带外地址。
25.根据本发明优选实施例,在根据所述带外地址获取所述待测服务器的执行数据包之前,所述服务器探测方法还包括:
26.调用预检测程序,生成探测信息;
27.基于所述应用接口,将所述探测信息发送至所述待测服务器中。
28.根据本发明优选实施例,所述根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果包括:
29.根据所述物理信息获取所述协议信息;
30.根据所述执行数据包的数据包语言,从所述协议信息中筛选出解析方式;
31.基于所述解析方式对所述执行数据包进行解析处理,得到所述执行数据包的解析数据;
32.从所述解析数据中获取与预设字段所对应的信息作为所述执行结果。
33.根据本发明优选实施例,所述根据所述带外地址获取所述待测服务器的执行数据包,包括:
34.获取所述待测服务器的生成数据包;
35.从所述生成数据包中提取响应地址;
36.比较所述响应地址与所述带外地址;
37.将所述响应地址为所述带外地址的生成数据包确定为所述执行数据包。
38.另一方面,本发明还提出一种服务器探测装置,所述服务器探测装置包括:
39.识别单元,用于响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器;
40.采集单元,用于从配置管理数据库中采集所述待测服务器的带外地址;
41.获取单元,用于根据所述带外地址获取所述待测服务器的执行数据包;
42.解析单元,用于根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果;
43.关闭单元,用于若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。
44.另一方面,本发明还提出一种电子设备,所述电子设备包括:
45.存储器,存储计算机可读指令;及
46.处理器,执行所述存储器中存储的计算机可读指令以实现所述服务器探测方法。
47.另一方面,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,所述计算机可读指令被电子设备中的处理器执行以实现所述服务
器探测方法。
48.由以上技术方案可以看出,本技术通过采集所述带外地址,并通过所述带外地址获取所述执行数据包,能够避免通过跳板机登录至所述待测服务器以获取所述执行数据包,由于避免了登录操作,因此,能够简化操作,从而提高所述待测服务器的探测效率,进而在所述执行结果指示所述执行数据包运行失败时,对所述待测服务器进行关闭操作,所述待测服务器在关机之后,则无法提供服务,从而能够避免对vip地址的占用,同时,在所述待测服务器关机之后,所述数据库集群的高可用服务随即触发,能够实现数据服务的正常切换,避免了所述数据库集群出现数据不一致的问题。
附图说明
49.图1是本发明服务器探测方法的较佳实施例的流程图。
50.图2是本发明服务器探测方法中带外管理文件的示意图。
51.图3是本发明服务器探测装置的较佳实施例的功能模块图。
52.图4是本发明实现服务器探测方法的较佳实施例的电子设备的结构示意图。
具体实施方式
53.为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
54.如图1所示,是本发明服务器探测方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
55.所述服务器探测方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的计算机可读指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(application specific integrated circuit,asic)、可编程门阵列(field-programmable gate array,fpga)、数字信号处理器(digital signal processor,dsp)、嵌入式设备等。
56.所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(personal digital assistant,pda)、游戏机、交互式网络电视(internet protocol television,iptv)、智能穿戴式设备等。
57.所述电子设备可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络电子设备、多个网络电子设备组成的电子设备组或基于云计算(cloud computing)的由大量主机或网络电子设备构成的云。
58.所述电子设备所在的网络包括,但不限于:互联网、广域网、城域网、局域网、虚拟专用网络(virtual private network,vpn)等。
59.101,响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器。
60.在本发明的至少一个实施例中,所述服务器探测请求可以在设定时间内触发生成,例如,所述设定时间可以在每天早上六点钟等。所述服务器探测请求可以携带有所述数据库集群的集群标识、所述服务器探测请求的请求时刻等信息。
61.所述数据库集群是指需要进行服务器探测的具体集群。所述数据库集群通常利用
至少两台或者多台数据库服务器,构成一个虚拟单一数据库逻辑映像,向客户端提供透明的数据服务。
62.所述待测服务器是指需要进行服务器探测的数据库服务器。所述待测服务器通常是指所述数据库集群中能够对外执行主数据库服务器独立完成的操作的数据库服务器,其中,所述主数据库服务器独立完成的操作可以包括,但不限于:写入操作等。
63.在本发明的至少一个实施例中,所述电子设备基于所述服务器探测请求识别出数据库集群中的待测服务器包括:
64.从所述服务器探测请求的请求报文中提取集群标识;
65.基于所述集群标识定位出所述数据库集群;
66.基于所述服务器探测请求的请求时刻,采集每个数据库服务器的请求数据包;
67.基于所述请求数据包的请求信息,从所述所有数据库服务器中识别出所述待测服务器。
68.其中,所述请求报文是指所述服务器探测请求中配置标识{}中存储的代码信息。
69.所述集群标识用于唯一指示所述数据库集群。
70.所述请求时刻是指所述服务器探测请求的生成时刻。
71.所述请求数据包是指发送时刻处于目标时段的数据包,其中,所述发送时刻是指向所述数据库服务器发送该数据包的时刻点。所述目标时段可以根据所述请求时刻与预设时段的差值生成,所述预设时段可以根据实际需求设定。例如,所述请求时刻为6:00,所述预设时段为2分钟,则所述目标时段为5:58-6:00。
72.所述请求信息是指所述请求数据包中的具体信息。
73.通过所述请求报文,能够快速提取道所述集群标识,从而提高所述数据库集群的定位效率,通过所述请求时刻能够合理的筛选出所述请求数据包,避免因获取到无关的请求数据包而导致所述待测服务器的识别失败,从而提高了所述待测服务器的识别准确性。
74.具体地,所述电子设备基于所述请求数据包的请求信息,从所述所有数据库服务器中识别出所述待测服务器包括:
75.若所述请求信息为写入请求,则将该请求数据包所对应的数据库服务器确定为所述待测服务器。
76.其中,所述写入请求具有特定的标识,例如,所述写入请求所对应的标识可以为:write。
77.通过上述实施方式,由于所述写入请求属于为主数据库服务器独立完成的操作,因此,通过所述请求信息与所述写入请求的比较,能够准确的识别出所述待测服务器。
78.在其他实施例中,若所述请求信息为所述主数据库服务器独立完成的操作信息,则将该请求数据包所对应的数据库服务器确定为所述待测服务器。
79.通过上述实施方式,能够全面的获取到所述待测服务器。
80.102,从配置管理数据库(configuration management database,cmdb)中采集所述待测服务器的带外地址。
81.在本发明的至少一个实施例中,所述配置管理数据库包含信息系统中组件的所有相关信息以及多个所述组件之间的关系,其中,所述信息系统通常为企业中it服务使用的系统等。
82.所述带外地址是指所述待测服务器的物理机所在的专用网(局域网)在互联网上的ip(internet protocol,互联网协议)地址。
83.在本发明的至少一个实施例中,所述电子设备从配置管理数据库中采集所述待测服务器的带外地址包括:
84.基于带外标识,从所述配置管理数据库中定位出带外管理文件;
85.基于所述待测服务器的物理信息及所述带外管理文件的文件信息,生成查询语句;
86.调用所述配置管理数据库的应用接口,运行所述查询语句,得到所述带外地址。
87.其中,所述带外标识用于指示所述带外管理文件。
88.所述带外管理文件是指所述带外地址所在的指定文件。
89.如图2所示,是本发明服务器探测方法中带外管理文件的示意图。在图2中,所述带外管理文件包括物理信息a与带外地址1的映射关系、物理信息b与带外地址2的映射关系、物理信息c与带外地址3的映射关系、物理信息d与带外地址4的映射关系。
90.所述物理信息可以包括,但不限于:所述待测服务器的物理地址等。
91.所述文件信息可以包括,但不限于:所述带外管理文件在所述配置管理数据库中的路径信息。
92.所述应用接口是指所述配置管理数据库与外界进行通讯的接口。
93.通过所述带外标识,能够快速的定位出所述带外管理文件,进而结合所述物理信息及所述文件信息,能够合理的生成所述查询语句,进而通过对所述应用接口的调用,能够直接实现对所述查询语句的运行,从而提高所述带外地址的采集准确性及采集效率。
94.103,根据所述带外地址获取所述待测服务器的执行数据包。
95.在本发明的至少一个实施例中,所述执行数据包可以是所述待测服务器基于所述探测信息所生成的响应数据包。所述执行数据包也可以是所述待测服务器基于所述客户端的数据请求所生成的响应数据包。
96.在本发明的至少一个实施例中,在根据所述带外地址获取所述待测服务器的执行数据包之前,所述服务器探测方法还包括:
97.调用预检测程序,生成探测信息;
98.基于所述应用接口,将所述探测信息发送至所述待测服务器中。
99.其中,所述预检测程序是指用于对所述待测服务器进行探测的代码程序。
100.所述探测信息是指包含所述预检测程序的数据包。
101.通过所述预检测程序能够快速生成所述探测信息,进而通过所述应用接口,能够提高所述探测信息的发送效率,此外,通过生成所述探测信息,能够避免在所述客户端没有发送所述数据请求而导致出现无法获取到所述执行数据包的问题。
102.在本发明的至少一个实施例中,所述电子设备根据所述带外地址获取所述待测服务器的执行数据包,包括:
103.获取所述待测服务器的生成数据包;
104.从所述生成数据包中提取响应地址;
105.比较所述响应地址与所述带外地址;
106.将所述响应地址为所述带外地址的生成数据包确定为所述执行数据包。
107.其中,所述生成数据包是指所述待测服务器所生成的响应数据包。
108.所述响应地址是指生成所述生成数据包的具体地址信息。
109.通过比较所述响应地址与所述带外地址,能够准确的从所述生成数据包中筛选出所述执行数据包,从而提高所述待测服务器的探测准确性。
110.104,根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果。
111.需要强调的是,为进一步保证上述执行结果的私密和安全性,上述执行结果还可以存储于一区块链的节点中。
112.在本发明的至少一个实施例中,所述协议信息是指所述待测服务器必须遵守的规则和约定。
113.所述执行结果用于指示所述待测服务器对所述执行数据包的处理结果,所述执行结果可以包括:true、fail等。
114.在本发明的至少一个实施例中,所述电子设备根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果包括:
115.根据所述物理信息获取所述协议信息;
116.根据所述执行数据包的数据包语言,从所述协议信息中筛选出解析方式;
117.基于所述解析方式对所述执行数据包进行解析处理,得到所述执行数据包的解析数据;
118.从所述解析数据中获取与预设字段所对应的信息作为所述执行结果。
119.其中,所述数据包语言是指所述执行数据包的代码语言,例如,所述数据包语言可以是java语言,所述数据包语言也可以是python语言,所述数据包语言还可以是c语言等等。
120.所述解析方式是指与所述数据包语言所对应的协议信息。
121.所述解析数据是指所述执行数据包中的主体报文中所携带的数据信息。
122.所述预设字段可以设定为data字段等。
123.通过所述物理信息,能够全面的获取到所述协议信息,进而通过所述数据包语言,能够合理的从所述协议信息中筛选出所述解析方式,进一步地,通过所述解析方式,能够合理的对所述执行数据包进行解析处理,从而提高所述解析数据的生成准确性及生成效率,通过所述预设字段,能够从所述解析数据中准确的获取到所述执行结果。
124.105,若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。
125.本实施例中,在所述执行结果指示所述执行数据包运行失败时,说明所述待测服务器无法正常运转,并且所述待测服务器占用vip地址,因此,通过对所述待测服务器进行关闭,能够触发所述数据库集群的高可用服务,从而实现数据服务的正常切换,避免了所述数据库集群出现数据不一致的问题。
126.在本发明的至少一个实施例中,所述服务器探测方法还包括:
127.统计指示所述执行数据包运行成功的执行结果所对应的待测服务器的服务器数量;
128.若所述服务器数量有多个,则指示所述执行数据包运行成功的执行结果所对应的待测服务器确定为待处理服务器;
129.获取所述数据库集群中的所有数据库服务器;
130.基于所述所有数据库服务器对所述多个待处理服务器的投票结果,识别出目标服务器;
131.关闭除所述目标服务器外的所有待处理服务器。
132.其中,所述投票结果是指所述所有数据库服务器从所述多个待处理服务器中筛选出作为主数据库服务器的结果。
133.所述目标服务器是指投票数量最高的待处理服务器。
134.本实施例中,当所述服务器数量有多个时,表明所述多个待处理服务器均作为主数据库服务器进行对外通信,当所述多个待处理服务器均作为主数据库服务器进行对外通信时,容易导致所述多个待处理服务器占用同一个vip地址,因此,通过所述投票结果,能够合理的筛选出所述目标服务器,进而关闭除所述目标服务器外的所有待处理服务器,能够在所述目标服务器作为主数据库服务器参与对外通信的同时,避免其他数据库服务器对vip地址的占用。
135.由以上技术方案可以看出,本技术通过采集所述带外地址,并通过所述带外地址获取所述执行数据包,能够避免通过跳板机登录至所述待测服务器以获取所述执行数据包,由于避免了登录操作,因此,能够简化操作,从而提高所述待测服务器的探测效率,进而在所述执行结果指示所述执行数据包运行失败时,对所述待测服务器进行关闭操作,所述待测服务器在关机之后,则无法提供服务,从而能够避免对vip地址的占用,同时,在所述待测服务器关机之后,所述数据库集群的高可用服务随即触发,能够实现数据服务的正常切换,避免了所述数据库集群出现数据不一致的问题。
136.如图3所示,是本发明服务器探测装置的较佳实施例的功能模块图。所述服务器探测装置11包括识别单元110、采集单元111、获取单元112、解析单元113、关闭单元114、统计单元115、确定单元116、生成单元117及发送单元118。本发明所称的模块/单元是指一种能够被处理器13所获取,并且能够完成固定功能的一系列计算机可读指令段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
137.识别单元110,用于响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器;
138.采集单元111,用于从配置管理数据库中采集所述待测服务器的带外地址;
139.获取单元112,用于根据所述带外地址获取所述待测服务器的执行数据包;
140.解析单元113,用于根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果;
141.关闭单元114,用于若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。
142.在本发明的至少一个实施例中,统计单元115统计指示所述执行数据包运行成功的执行结果所对应的待测服务器的服务器数量;
143.确定单元116,用于若所述服务器数量有多个,则指示所述执行数据包运行成功的执行结果所对应的待测服务器确定为待处理服务器;
144.所述获取单元112,还用于获取所述数据库集群中的所有数据库服务器;
145.所述识别单元110,还用于基于所述所有数据库服务器对所述多个待处理服务器
的投票结果,识别出目标服务器;
146.所述关闭单元114,还用于关闭除所述目标服务器外的所有待处理服务器。
147.本实施例中,当所述服务器数量有多个时,表明所述多个待处理服务器均作为主数据库服务器进行对外通信,当所述多个待处理服务器均作为主数据库服务器进行对外通信时,容易导致所述多个待处理服务器占用同一个vip地址,因此,通过所述投票结果,能够合理的筛选出所述目标服务器,进而关闭除所述目标服务器外的所有待处理服务器,能够在所述目标服务器作为主数据库服务器参与对外通信的同时,避免其他数据库服务器对vip地址的占用。
148.在本发明的至少一个实施例中,所述识别单元110,还用于从所述服务器探测请求的请求报文中提取集群标识;
149.基于所述集群标识定位出所述数据库集群;
150.基于所述服务器探测请求的请求时刻,采集每个数据库服务器的请求数据包;
151.基于所述请求数据包的请求信息,从所述所有数据库服务器中识别出所述待测服务器。
152.通过所述请求报文,能够快速提取道所述集群标识,从而提高所述数据库集群的定位效率,通过所述请求时刻能够合理的筛选出所述请求数据包,避免因获取到无关的请求数据包而导致所述待测服务器的识别失败,从而提高了所述待测服务器的识别准确性。
153.具体地,所述识别单元110,还用于若所述请求信息为写入请求,则将该请求数据包所对应的数据库服务器确定为所述待测服务器。
154.通过上述实施方式,由于所述写入请求属于为主数据库服务器独立完成的操作,因此,通过所述请求信息与所述写入请求的比较,能够准确的识别出所述待测服务器。
155.在其他实施例中,所述识别单元110,还用于若所述请求信息为所述主数据库服务器独立完成的操作信息,则将该请求数据包所对应的数据库服务器确定为所述待测服务器。
156.通过上述实施方式,能够全面的获取到所述待测服务器。
157.在本发明的至少一个实施例中,所述采集单元111,还用于基于带外标识,从所述配置管理数据库中定位出带外管理文件;
158.基于所述待测服务器的物理信息及所述带外管理文件的文件信息,生成查询语句;
159.调用所述配置管理数据库的应用接口,运行所述查询语句,得到所述带外地址。
160.通过所述带外标识,能够快速的定位出所述带外管理文件,进而结合所述物理信息及所述文件信息,能够合理的生成所述查询语句,进而通过对所述应用接口的调用,能够直接实现对所述查询语句的运行,从而提高所述带外地址的采集准确性及采集效率。
161.在本发明的至少一个实施例中,在根据所述带外地址获取所述待测服务器的执行数据包之前,生成单元117,用于调用预检测程序,生成探测信息;
162.发送单元,用于基于所述应用接口,将所述探测信息发送至所述待测服务器中。
163.通过所述预检测程序能够快速生成所述探测信息,进而通过所述应用接口,能够提高所述探测信息的发送效率,此外,通过生成所述探测信息,能够避免在所述客户端没有发送所述数据请求而导致出现无法获取到所述执行数据包的问题。
164.在本发明的至少一个实施例中,所述解析单元113,还用于根据所述物理信息获取所述协议信息;
165.根据所述执行数据包的数据包语言,从所述协议信息中筛选出解析方式;
166.基于所述解析方式对所述执行数据包进行解析处理,得到所述执行数据包的解析数据;
167.从所述解析数据中获取与预设字段所对应的信息作为所述执行结果。
168.通过所述物理信息,能够全面的获取到所述协议信息,进而通过所述数据包语言,能够合理的从所述协议信息中筛选出所述解析方式,进一步地,通过所述解析方式,能够合理的对所述执行数据包进行解析处理,从而提高所述解析数据的生成准确性及生成效率,通过所述预设字段,能够从所述解析数据中准确的获取到所述执行结果。
169.在本发明的至少一个实施例中,所述获取单元112,还用于获取所述待测服务器的生成数据包;
170.从所述生成数据包中提取响应地址;
171.比较所述响应地址与所述带外地址;
172.将所述响应地址为所述带外地址的生成数据包确定为所述执行数据包。
173.通过比较所述响应地址与所述带外地址,能够准确的从所述生成数据包中筛选出所述执行数据包,从而提高所述待测服务器的探测准确性。
174.由以上技术方案可以看出,本技术通过采集所述带外地址,并通过所述带外地址获取所述执行数据包,能够避免通过跳板机登录至所述待测服务器以获取所述执行数据包,由于避免了登录操作,因此,能够简化操作,从而提高所述待测服务器的探测效率,进而在所述执行结果指示所述执行数据包运行失败时,对所述待测服务器进行关闭操作,所述待测服务器在关机之后,则无法提供服务,从而能够避免对vip地址的占用,同时,在所述待测服务器关机之后,所述数据库集群的高可用服务随即触发,能够实现数据服务的正常切换,避免了所述数据库集群出现数据不一致的问题。
175.如图4所示,是本发明实现服务器探测方法的较佳实施例的电子设备的结构示意图。
176.在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机可读指令,例如服务器探测程序。
177.本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
178.所述处理器13可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及执行所述电子设备1的操作系统以及安装的各类应用程序、程序
代码等。
179.示例性的,所述计算机可读指令可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该计算机可读指令段用于描述所述计算机可读指令在所述电子设备1中的执行过程。例如,所述计算机可读指令可以被分割成识别单元110、采集单元111、获取单元112、解析单元113、关闭单元114、统计单元115、确定单元116、生成单元117及发送单元118。
180.所述存储器12可用于存储所述计算机可读指令和/或模块,所述处理器13通过运行或执行存储在所述存储器12内的计算机可读指令和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。存储器12可以包括非易失性和易失性存储器,例如:硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他存储器件。
181.所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述存储器12可以是具有实物形式的存储器,如内存条、tf卡(trans-flash card)等等。
182.所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一计算机可读存储介质中,该计算机可读指令在被处理器执行时,可实现上述各个方法实施例的步骤。
183.其中,所述计算机可读指令包括计算机可读指令代码,所述计算机可读指令代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机可读指令代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)。
184.本发明所指区块链是分布式服务器探测、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
185.结合图1,所述电子设备1中的所述存储器12存储计算机可读指令实现一种服务器探测方法,所述处理器13可执行所述计算机可读指令从而实现:
186.响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器;
187.从配置管理数据库中采集所述待测服务器的带外地址;
188.根据所述带外地址获取所述待测服务器的执行数据包;
189.根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服
务器对所述执行数据包的执行结果;
190.若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。
191.具体地,所述处理器13对上述计算机可读指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
192.在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
193.所述计算机可读存储介质上存储有计算机可读指令,其中,所述计算机可读指令被处理器13执行时用以实现以下步骤:
194.响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器;
195.从配置管理数据库中采集所述待测服务器的带外地址;
196.根据所述带外地址获取所述待测服务器的执行数据包;
197.根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果;
198.若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。
199.所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
200.另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
201.因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
202.此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。所述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
203.最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

技术特征:
1.一种服务器探测方法,其特征在于,所述服务器探测方法包括:响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器;从配置管理数据库中采集所述待测服务器的带外地址;根据所述带外地址获取所述待测服务器的执行数据包;根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果;若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。2.如权利要求1所述的服务器探测方法,其特征在于,所述服务器探测方法还包括:统计指示所述执行数据包运行成功的执行结果所对应的待测服务器的服务器数量;若所述服务器数量有多个,则指示所述执行数据包运行成功的执行结果所对应的待测服务器确定为待处理服务器;获取所述数据库集群中的所有数据库服务器;基于所述所有数据库服务器对所述多个待处理服务器的投票结果,识别出目标服务器;关闭除所述目标服务器外的所有待处理服务器。3.如权利要求2所述的服务器探测方法,其特征在于,所述基于所述服务器探测请求识别出数据库集群中的待测服务器包括:从所述服务器探测请求的请求报文中提取集群标识;基于所述集群标识定位出所述数据库集群;基于所述服务器探测请求的请求时刻,采集每个数据库服务器的请求数据包;基于所述请求数据包的请求信息,从所述所有数据库服务器中识别出所述待测服务器。4.如权利要求1所述的服务器探测方法,其特征在于,所述从配置管理数据库中采集所述待测服务器的带外地址包括:基于带外标识,从所述配置管理数据库中定位出带外管理文件;基于所述待测服务器的物理信息及所述带外管理文件的文件信息,生成查询语句;调用所述配置管理数据库的应用接口,运行所述查询语句,得到所述带外地址。5.如权利要求4所述的服务器探测方法,其特征在于,在根据所述带外地址获取所述待测服务器的执行数据包之前,所述服务器探测方法还包括:调用预检测程序,生成探测信息;基于所述应用接口,将所述探测信息发送至所述待测服务器中。6.如权利要求4所述的服务器探测方法,其特征在于,所述根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果包括:根据所述物理信息获取所述协议信息;根据所述执行数据包的数据包语言,从所述协议信息中筛选出解析方式;基于所述解析方式对所述执行数据包进行解析处理,得到所述执行数据包的解析数据;
从所述解析数据中获取与预设字段所对应的信息作为所述执行结果。7.如权利要求1所述的服务器探测方法,其特征在于,所述根据所述带外地址获取所述待测服务器的执行数据包,包括:获取所述待测服务器的生成数据包;从所述生成数据包中提取响应地址;比较所述响应地址与所述带外地址;将所述响应地址为所述带外地址的生成数据包确定为所述执行数据包。8.一种服务器探测装置,其特征在于,所述服务器探测装置包括:识别单元,用于响应于服务器探测请求,基于所述服务器探测请求识别出数据库集群中的待测服务器;采集单元,用于从配置管理数据库中采集所述待测服务器的带外地址;获取单元,用于根据所述带外地址获取所述待测服务器的执行数据包;解析单元,用于根据所述待测服务器的协议信息,对所述执行数据包进行解析,得到所述待测服务器对所述执行数据包的执行结果;关闭单元,用于若所述执行结果指示所述执行数据包运行失败,则关闭所述待测服务器。9.一种电子设备,其特征在于,所述电子设备包括:存储器,存储有计算机可读指令;及处理器,执行所述存储器中存储的计算机可读指令以实现如权利要求1至7中任意一项所述的服务器探测方法。10.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有计算机可读指令,所述计算机可读指令被电子设备中的处理器执行以实现如权利要求1至7中任意一项所述的服务器探测方法。

技术总结
本发明涉及金融科技,提供一种服务器探测方法、装置、设备及存储介质。该方法从配置管理数据库中采集待测服务器的带外地址,根据带外地址获取执行数据包,根据待测服务器的协议信息对执行数据包进行解析,得到执行结果,若执行结果指示执行数据包运行失败,关闭待测服务器,能够解决主备数据库服务器同时占用同一个VIP地址而导致数据不一致的技术问题。此外,本发明还涉及区块链技术,所述执行结果可存储于区块链中。区块链中。区块链中。


技术研发人员:王均
受保护的技术使用者:平安付科技服务有限公司
技术研发日:2023.03.15
技术公布日:2023/7/31
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐