一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种服务状态监控方法及系统、电子设备、存储介质与流程

2022-12-10 00:47:32 来源:中国专利 TAG:


1.本技术涉及服务监控技术领域,特别涉及一种服务状态监控方法及系统、电子设备、存储介质。


背景技术:

2.监控是系统监控状况检查的重要手段,它既能查看各个时间点服务的好坏,又能快速对问题进行告警甚至预防,具有很好的实用价值。
3.当前对于系统服务状态的监控方式,主要是通过在各个服务中设置相应的埋点,从而可以基于设置的埋点采集到服务的相应的数据,并对这些数据进行分析,从而实现对服务状态的监控。另一种主要的方式,则是基于服务产生并存储在数据库中的数据,对数据库中服务产生的数据进行分析,从而实现对服务状态的监控。
4.但是设置埋点则需要对程序进行相应的改造,由于现在服务的数量通常较大,所以改造量较大,非常不方便。而对数据库中的数据进行分析,由于数据库中的数据量较大,所以查询效率较慢,所以也不够便捷。


技术实现要素:

5.基于上述现有技术的不足,本技术提供了一种服务状态监控方法及系统、电子设备、存储介质,以解决现有的监控方法不够便捷的问题。
6.为了实现上述目的,本技术提供了以下技术方案:
7.本技术第一方面提供了一种服务状态监控方法,应用于服务状态监控系统,所述服务器状态监控系统包括zookeeper注册模块、solr监控模块以及数据库模块,所述服务状态监控方法,包括:
8.所述zookeeper注册模块获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个所述服务的节点配置信息;
9.所述数据库模块基于各个所述服务的节点配置信息设置各个所述服务的端口的信息;
10.所述数据库模块通过各个所述服务的端口采集各个所述服务的目标数据,并将所述目标数据进行存储;其中,所述目标数据至少包括心跳数据、接口签名以及服务响应数据;
11.所述solr监控模块从所述数据库模块获取各个所述服务的所述目标数据;
12.所述solr监控模块基于所述zookeeper注册模块中各个所述服务的节点配置信息中的链路状态信息,对各个所述服务的所述目标数据进行处理,得到监控结果。
13.可选地,在上述的服务状态监控方法中,所述zookeeper注册模块获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个所述服务的节点配置信息之后,还包括:
14.所述zookeeper注册模块响应用户的编排操作,对各个所述服务的节点配置信息
中的所述链路状态信息进行编排。
15.可选地,在上述的服务状态监控方法中,还包括:
16.所述数据库模块获取各个所述服务的输入数据以及所述服务响应数据;
17.所述zookeeper注册模块按照各个所述服务的节点配置信息中的所述链路状态信息指示的服务调用顺序,对各个所述服务的所述输入数据以及所述服务响应数据进行拼接,得到拼接数据;
18.所述zookeeper注册模块计算所述拼接数据的完整度;
19.所述zookeeper注册模块判断所述拼接数据的完整度是否大于预设阈值;
20.若判断出所述拼接数据的完整度大于预设阈值,则所述zookeeper注册模块确定各个所述服务之间的当前链路无误。
21.可选地,在上述的服务状态监控方法中,所述数据库模块通过各个所述服务的端口采集各个所述服务的目标数据,并将所述目标数据进行存储,包括:
22.所述数据库模块确定出满足对应的顾虑条件信息的各个所述服务;
23.所述数据库模块分别基于确定出的各个所述服务的所述顾虑条件信息中的端口号,从各个所述服务的端口中采集各个所述服务的所述目标数据;
24.所述数据库模块将采集到的各个所述服务的所述目标数据进行存储。
25.本技术第二方面提供了一种服务状态监控系统,包括:
26.zookeeper注册模块、solr监控模块以及数据库模块;
27.所述zookeeper注册模块用于获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个所述服务的节点配置信息;
28.所述数据库模块用于基于各个所述服务的节点配置信息设置各个所述服务的端口的信息,并通过各个所述服务的端口采集各个所述服务的目标数据,以及将所述目标数据进行存储;其中,所述目标数据至少包括心跳数据、接口签名以及服务响应数据;
29.所述solr监控模块用于从所述数据库模块获取各个所述服务的所述目标数据,并基于所述zookeeper注册模块中各个所述服务的节点配置信息中的链路状态信息,对各个所述服务的所述目标数据进行处理,得到监控结果。
30.可选地,在上述的服务状态监控系统中,所述zookeeper注册模块,还用于:
31.响应用户的编排操作,对各个所述服务的节点配置信息中的所述链路状态信息进行编排。
32.可选地,在上述的服务状态监控系统中,所述zookeeper注册模块,还用于:
33.接收所述数据库模块获取的各个所述服务的输入数据以及所述服务响应数据;
34.按照各个所述服务的节点配置信息中的所述链路状态信息指示的服务调用顺序,对各个所述服务的所述输入数据以及所述服务响应数据进行拼接,得到拼接数据;
35.计算所述拼接数据的完整度;
36.判断所述拼接数据的完整度是否大于预设阈值;
37.若判断出所述拼接数据的完整度大于预设阈值,则确定各个所述服务之间的当前链路无误。
38.可选地,在上述的服务状态监控系统中,所述数据库模块通过各个所述服务的端口采集各个所述服务的目标数据,并将所述目标数据进行存储时,用于:
39.确定出满足对应的顾虑条件信息的各个所述服务;
40.分别基于确定出的各个所述服务的所述顾虑条件信息中的端口号,从各个所述服务的端口中采集各个所述服务的所述目标数据;
41.将采集到的各个所述服务的所述目标数据进行存储。
42.本技术第三方面提供了一种电子设备,包括:
43.存储器和处理器;
44.其中,所述存储器用于存储程序;
45.所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如上述任意一项所述的服务状态监控方法。
46.本技术第四方面提供了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述任意一项所述的服务状态监控方法。
47.本技术提供了一种服务状态监控方法,应用于服务状态监控系统,该服务器状态监控系统包括zookeeper注册模块、solr监控模块以及数据库模块,该服务状态监控方法,通过zookeeper注册模块获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个服务的节点配置信息。然后数据库模块基于各个服务的节点配置信息设置各个服务的端口的信息,并通过各个服务的端口采集各个服务的目标数据,然后将目标数据进行存储;其中,目标数据至少包括心跳数据、接口签名以及服务响应数据。最后,由solr监控模块从数据库模块获取各个服务的目标数据,并基于zookeeper注册模块中各个服务的节点配置信息中的链路状态信息,对各个服务的目标数据进行处理,得到监控结果。从而通过zookeeper注册模块进行注册的方式进行数据的采集,不需要进行数据埋点,并且通过solr监控模块可以实现快速的检索,从而使得对于服务状态的监控更加的便捷。
附图说明
48.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
49.图1为本技术实施例提供的一种服务状态监控方法的流程图;
50.图2为本技术实施例提供的一种链路的有效性校验方法的流程图;
51.图3为本技术另一实施例提供的另一种服务状态监控方法的流程图;
52.图4为本技术另一实施例提供的一种服务状态监控系统的架构示意图;
53.图5为本技术另一实施例提供的一种电子设备的结构示意图。
具体实施方式
54.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
55.在本技术中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与
另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
56.本技术实施例提供了一种服务状态监控方法,以解决现有的监控方法不够便捷的问题。
57.需要说明的是,为了实现本技术实施例提供的一种服务状态监控方法,本技术实施例提供了一种服务状态监控系统,具体包括:zookeeper注册模块、solr监控模块以及数据库模块。
58.也就是说,在本技术实施例中,基于zookeeper和solr构建了一个服务状态监控系统。
59.其中,zookeeper是一个分布式的,开放源码的分布式应用程序协调服务。一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。在本技术实施例中,主要用户进行服务的注册,即服务的节点配置信息的配置维护。
60.solr是一个独立的企业级搜索应用服务器,它对外提供类似于web-service的api接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的xml文件,生成索引,也可以通过http get操作提出查找请求,并得到xml格式的返回结果。所以solr在本技术实施例中主要是从数据库模型获取数据进行处理,得到返回结果。
61.基于上述的服务状态监控系统,本技术实施例提供的一种服务状态监控方法,应用于上述的服务状态监控系统。如图1所示,本技术实施例提供的一种服务状态监控方法,包括以下步骤:
62.s101、zookeeper注册模块获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个服务的节点配置信息。
63.需要说明的是,为了便于更精确的对服务进行监控,所以在本技术实施例中,可以将各个待监控的服务进行拆解,拆解为多个单独服务。然后按照拆解前各个服务的链路注册至zookeeper注册模块的zookeeper服务中。具体主要在zookeeper注册模块保留两个配置项,一个为监控范围内的所有服务。另一个则是配置项保存服务的链路信息。
64.可选地,为了保证注册时的链路的正确性,在本技术另一实施例中,zookeeper注册模块还可以对配置的链路进行有效性验证。如图2所示,本技术实施例提供的一种链路的有效性校验方法,包括:
65.s201、数据库模块获取各个服务的输入数据以及服务响应数据。
66.可选地,在本技术实施例中,可以是定时向数据库模块发送各个服务的数据抽检,然后由数据库模块获取各个服务的服务数据,并反馈给zookeeper注册模块。
67.s202、zookeeper注册模块按照各个服务的节点配置信息中的链路状态信息指示的服务调用顺序,对各个服务的输入数据以及服务响应数据进行拼接,得到拼接数据。
68.zookeeper注册模块按照各个服务的节点配置信息中的链路状态信息,就可以确
定各个服务之间的调用顺序,即各个服务组成的链路,然后按照各个服务之间的调用顺序,将各个服务的输入数据以及服务响应数据进行拼接,
69.s203、zookeeper注册模块计算拼接数据的完整度。
70.在链路有效时,正常情况下上一个链路输出的服务响应数据应该是下一个服务的输入数据,所以可以通过上一服务的服务相应数据与下一个服务的输入数据进行相似度计算,最后进行汇总得到拼接数据的完整度,即可以通过拼接数据中的每两个相邻的数据之间的相似度,计算完整度。
71.s204、zookeeper注册模块判断拼接数据的完整度是否大于预设阈值。
72.其中,若判断出拼接数据的完整度大于预设阈值,则执行步骤s205。
73.s205、zookeeper注册模块确定各个服务之间的当前链路无误。
74.可选地,若是累次k次的抽检的拼接数据的完整度均低于预设阈值,说明上一个服务输出和下一个服务的输入的相似度较小,可能是上一个服务中包括有多个服务,由于经过了多次处理,导致相似度较小,所以可以对相似度较低链路较低进行分解,对分解出的服务单独注册到zookeeper注册模块中。
75.s102、数据库模块基于各个服务的节点配置信息设置各个服务的端口的信息。
76.具体的,数据库模块对zookeeper注册模块中的节点配置信息进行获取,然后根据获取到的节点配置信息,为节点配置信息对应的服务设置端口的信息,以及服务名等。
77.s103、数据库模块通过各个服务的端口采集各个服务的目标数据,并将目标数据进行存储。
78.其中,目标数据为指定需要采集的数据,其至少包括心跳数据、接口签名以及服务响应数据。当然还可以根据需求包括有其他的信息。
79.具体的,数据库模块根据设置的各个服务的端口的信息,从相应的各个服务的端口采集到指定的目标数据,并存储在数据库模块中。
80.s104、solr监控模块从数据库模块获取各个服务的目标数据。
81.具体的,solr监控模块从数据库模块获取其采集的各个服务的目标数据,或者由数据库模块在将各个服务的目标数据进行存储后,将各个服务的目标数据同步至solr监控模块。
82.s105、solr监控模块基于zookeeper注册模块中各个服务的节点配置信息中的链路状态信息,对各个服务的目标数据进行处理,得到监控结果。
83.solr监控模块主要用于对数据库模块采集的数据进行加工。
84.可选地,solr监控模块可以通过全量或者增量的方式对数据库模块采集的各个服务的目标数据进行实时拉取。然后,基于zookeeper注册模块中各个服务的节点配置信息中的链路状态信息确定出有效链路,并对拉取到的目标数据中的元数据,采用有效链路首位直接拼接的方式进行关联信息获取。具体可以包括各个服务的id、服务响应数据、数据产生时间等。并且可以自动将关联信息存储至索引库中。
85.可选地,solr监控模块对目标数据的处理过程,除了对目标数据进行上述分析,还可以实时对目标数据进行自动计算。具体可以为基于solr监控模块的快速索引功能,对各链路的单独服务进行数据提取。具体可以提取出单一服务的时间戳和档位时间的数据量等,然后对各个服务进行关联计算,即计算各个关联的服务之间的时间戳差异等,最终基于
计算的数据分析得到各链路和各个服务节点的监控信息,如服务是否可用、服务响应间隔、链路状态、故障链路、中间数据检索等。
86.本技术实施例提供了一种服务状态监控方法,应用于服务状态监控系统,该服务器状态监控系统包括zookeeper注册模块、solr监控模块以及数据库模块,该服务状态监控方法,通过zookeeper注册模块获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个服务的节点配置信息。然后数据库模块基于各个服务的节点配置信息设置各个服务的端口的信息,并通过各个服务的端口采集各个服务的目标数据,然后将目标数据进行存储;其中,目标数据至少包括心跳数据、接口签名以及服务响应数据。最后,由solr监控模块从数据库模块获取各个服务的目标数据,并基于zookeeper注册模块中各个服务的节点配置信息中的链路状态信息,对各个服务的目标数据进行处理,得到监控结果。从而通过zookeeper注册模块进行注册的方式进行数据的采集,不需要进行数据埋点,并且通过solr监控模块可以实现快速的检索,从而使得对于服务状态的监控更加的便捷。
87.本技术另一实施例提供了另一种服务状态监控方法,同样应用于上述的服务状态监控系统。如图3所示,本技术实施例提供的另一种服务状态监控方法,包括:
88.s301、zookeeper注册模块获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个服务的节点配置信息。
89.需要说明的是,步骤s301的具体实施方式,可相应地参考上述方法实施例中的步骤s101,此处不再赘述。
90.s302、zookeeper注册模块响应用户的编排操作,对各个服务的节点配置信息中的链路状态信息进行编排。
91.需要说明的是,在本技术实施例中,可以对各个服务之间的链路进行动态的编排,以便于对错误的情况进行调整,或者在服务的调用顺序发生变化时进行相应地调整。
92.s303、数据库模块基于各个服务的节点配置信息设置各个服务的顾虑条件信息。
93.其中,顾虑条件信息中至少包括服务的端口的信息以及服务名等。端口的信息具体可以为端口号。
94.s304、数据库模块确定出满足对应的顾虑条件信息的各个服务。
95.具体的,根据各个顾虑条件,分别查找出与各个顾虑条件相一致的服务。
96.s305、数据库模块分别基于确定出的各个服务的顾虑条件信息中的端口号,从各个服务的端口中采集各个服务的目标数据。
97.其中,目标数据至少包括心跳数据、接口签名以及服务响应数据。
98.具体的,分别针对确定出的各个服务,从其顾虑条件信息中查找出其端口号,然后从该端口号对应的端口处,采集到该服务的目标数据。
99.s306、数据库模块将采集到的各个服务的目标数据进行存储。
100.s307、solr监控模块接收数据库模块同步的各个服务的目标数据。
101.需要说明的是,步骤s307的一种具体实施方式,可相应地参考上述方法实施例中的步骤s104,此处不再赘述。
102.s308、solr监控模块基于zookeeper注册模块中各个服务的节点配置信息中的链路状态信息,对各个服务的目标数据进行处理,得到监控结果。
103.需要说明的是,步骤s308的一种具体实施方式,可相应地参考上述方法实施例中
的步骤s105,此处不再赘述。
104.需要说明的是,附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
105.虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。
106.本技术另一实施例提供了一种服务状态监控系统,如图4所示,包括:
107.zookeeper注册模块401、solr监控模块402以及数据库模块403。
108.zookeeper注册模块401用于获取各个服务的节点注册请求,并基于各个服务的节点注册请求注册各个服务的节点配置信息。
109.数据库模块402用于基于各个服务的节点配置信息设置各个服务的端口的信息,并通过各个服务的端口采集各个服务的目标数据,以及将目标数据进行存储。
110.其中,目标数据至少包括心跳数据、接口签名以及服务响应数据。
111.solr监控模块403用于从数据库模块获取各个服务的目标数据,并基于zookeeper注册模块中各个服务的节点配置信息中的链路状态信息,对各个服务的目标数据进行处理,得到监控结果。
112.可选地,在本技术另一实施例提供的服务状态监控系统中,zookeeper注册模块,还用于:
113.响应用户的编排操作,对各个服务的节点配置信息中的链路状态信息进行编排。
114.可选地,在本技术另一实施例提供的服务状态监控系统中,zookeeper注册模块,还用于:
115.接收数据库模块获取的各个服务的输入数据以及服务响应数据。
116.按照各个服务的节点配置信息中的链路状态信息指示的服务调用顺序,对各个服务的输入数据以及服务响应数据进行拼接,得到拼接数据。
117.计算拼接数据的完整度。
118.判断拼接数据的完整度是否大于预设阈值。
119.若判断出拼接数据的完整度大于预设阈值,则确定各个服务之间的当前链路无误。
120.可选地,在本技术另一实施例提供的服务状态监控系统中,数据库模块通过各个服务的端口采集各个服务的目标数据,并将目标数据进行存储时,用于:
121.确定出满足对应的顾虑条件信息的各个服务。
122.分别基于确定出的各个服务的顾虑条件信息中的端口号,从各个服务的端口中采集各个服务的目标数据。
123.将采集到的各个服务的目标数据进行存储。
124.需要说明的是,本技术上述实施例提供的服务状态监控系统中的zookeeper注册模块、solr监控模块以及数据库模块的具体工作过程,可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
125.本技术另一实施例提供了一种电子设备,如图5所示,包括:
126.存储器501和处理器502。
127.其中,存储器501用于存储程序。
128.处理器502用于执行存储器501存储的程序,并且该程序被执行时,具体用于实现如上述任意一个实施例提供的服务状态监控方法。
129.本技术另一实施例提供了一种计算机存储介质,用于存储计算机程序,计算机程序被执行时,用于实现如上述任意一个实施例提供的服务状态监控方法。
130.计算机存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
131.需要说明的是,本发明提供的一种服务状态监控方法及系统、电子设备、存储介质可用于人工智能领域、大数据领域或金融领域。上述仅为示例,并不对本发明提供的一种服务状态监控方法及系统、电子设备、存储介质的应用领域进行限定。
132.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
133.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献