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

分布式监控系统的制作方法

2022-08-10 21:22:03 来源:中国专利 TAG:


1.本技术涉及分布式领域,具体涉及一种分布式监控系统。


背景技术:

2.在集中式架构下,it人员通过登录终端堡垒机进行运维监控的方式,已无法满足分布式架构下大规模集群部署运维需求,监控工作难以开展,出现生产问题难追踪难定位。
3.现有的分布式系统中,大多采用prometheus对物理机状态进行监控,该方案中prometheus基于内存进行存储计算,因此当部署机发生故障,运维监控工具将失去所有数据,无法追踪定位问题,出现运维失效,系统可靠性低,运维成本高。


技术实现要素:

4.针对现有技术中的问题,本技术提供一种分布式监控系统,能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求。
5.为了解决上述问题中的至少一个,本技术提供以下技术方案:
6.第一方面,本技术提供一种分布式监控系统,包括:
7.状态采集模块,所述状态采集模块用于采集客户端的日志文件并发送至kafka集群模块;
8.kafka集群模块,所述kafka集群模块包括负载均衡节点和消息中间件服务器节点,所述kafka集群模块用于接收所述状态采集模块发送的日志文件并通过所述负载均衡节点和所述消息中间件服务器节点进行消息分发处理;
9.核心处理服务器模块,所述核心处理服务器模块用于接收所述kafka集群模发送的日志文件并进行处理消费;
10.监控展示模块,所述监控展示模块与所述核心处理服务器模块连接,所述监控展示模块用于接收所述核心处理服务器模块发送的回传报表信息、运行状态数据以及系统指标汇总并进行可视化展示。
11.进一步地,所述核心处理服务器模块包括统一接入组件,所述统一接入组件与所述kafka集群模块连接,所述统一接入组件用于对所述kafka集群模块发送的消息和待处理任务进行线程分配和消息分发。
12.进一步地,所述核心处理服务器模块还包括线程池组件,所述线程池组件与所述统一接入组件连接,所述线程池组件用于对所述统一接入组件分发的消息进行预处理。
13.进一步地,所述核心处理服务器模块还包括高性能队列组件,所述高性能队列组件与所述线程池组件连接,所述高性能队列组件用于接收所述线程池组件分发的消息。
14.进一步地,所述核心处理服务器模块还包括中央处理器组件,所述中央处理器组件用于对接收到的消息进行处理消费。
15.进一步地,所述中央处理器组件包括取样处理器、问题处理器、心跳处理器、消息树处理器以及业务处理器中的至少一种。
16.进一步地,还包括共享组件远程库模块,所述共享组件远程库模块与所述状态采集模块连接,所述共享组件远程库模块用于托管所述状态采集模块采集到的日志文件源码。
17.进一步地,还包括数据库存储模块,所述数据库存储模块与所述核心处理服务器模块连接,所述数据库存储模块用于持久化存储所述核心处理服务器接收到的消息。
18.进一步地,还包括源码版本托管模块,所述源码版本托管模块包括用于对源码进行版本管理的离线中央仓库。
19.第二方面,本技术提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的分布式监控系统。
20.第三方面,本技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的分布式监控系统。
21.第四方面,本技术提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现所述的分布式监控系统。
22.由上述技术方案可知,本技术提供一种分布式监控系统,通过设置状态采集模块、kafka集群模块、核心处理服务器模块以及监控展示模块,由此能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求。
附图说明
23.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1为本技术实施例中的分布式监控系统的整体结构示意图;
25.图2为本技术实施例中的分布式监控系统的简要结构示意图;
26.图3为本技术实施例中的核心处理服务器模块的结构示意图;
27.图4为本技术实施例中的电子设备的结构示意图。
具体实施方式
28.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
29.本技术技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
30.考虑到现有的分布式系统中大多采用prometheus对物理机状态进行监控,该方案中prometheus基于内存进行存储计算,因此当部署机发生故障,运维监控工具将失去所有数据,无法追踪定位问题,出现运维失效,系统可靠性低,运维成本高的问题,本技术提供一种分布式监控系统,通过设置状态采集模块、kafka集群模块、核心处理服务器模块以及监控展示模块,由此能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展
非功能要求。
31.为了能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求,本技术提供一种分布式监控系统的实施例,参见图1和图2,所述分布式监控系统具体包含有如下内容:
32.状态采集模块10,所述状态采集模块10用于采集客户端的日志文件并发送至kafka集群模块20。
33.可选的,本技术的状态采集模块10通过中央maven库进行托管,由应用服务器拉取至本地进行构建部署,主要负责采集客户端各类型日志,并实时发送至kafka集群模块20网关负载均衡进行分发处理。
34.kafka集群模块20,所述kafka集群模块20包括负载均衡节点和消息中间件服务器节点,所述kafka集群模块20用于接收所述状态采集模块10发送的日志文件并通过所述负载均衡节点和所述消息中间件服务器节点进行消息分发处理。
35.可选的,本技术的kafka集群模块20可以部署负载均衡与kafka服务器节点,接收状态采集模块10发送来的日志文件,并使用高性能计算处理节点能力,完成消息分类聚集,消息树构建,主题类型打标等工作,并将消息转投递至核心处理模块。
36.核心处理服务器模块30,所述核心处理服务器模块30用于接收所述kafka集群模发送的日志文件并进行处理消费。
37.可选的,本技术的核心处理服务器模块30可以具有四个组件:统一接入组件31、线程池组件32、高性能队列组件33以及中央处理器组件34,由此用于接收所述kafka集群模发送的日志文件并进行处理消费。
38.监控展示模块40,所述监控展示模块40与所述核心处理服务器模块30连接,所述监控展示模块40用于接收所述核心处理服务器模块30发送的回传报表信息、运行状态数据以及系统指标汇总并进行可视化展示。
39.可选的,本技术的监控展示模块40可以对接核心处理服务器模块30回传的报表信息,运行状态数据,系统指标汇总,进行ui绘制,提供条件筛选,模糊查询,运维监控统计,报表定制展示,视图展示等功能。
40.从上述描述可知,本技术实施例提供的分布式监控系统,能够通过设置状态采集模块10、kafka集群模块20、核心处理服务器模块30以及监控展示模块40,由此能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求。
41.在本技术的分布式监控系统的一实施例中,参见图3,所述核心处理服务器模块30包括统一接入组件31,所述统一接入组件31与所述kafka集群模块20连接,所述统一接入组件31用于对所述kafka集群模块20发送的消息和待处理任务进行线程分配和消息分发。
42.具体的,所述统一接入组件31配合线程池模块,对kafka集群发送的各消息及待处理任务进行线程分配,维护连接建立状态及各任务分发状态监控。
43.所述核心处理服务器模块30还包括线程池组件32,所述线程池组件32与所述统一接入组件31连接,所述线程池组件32用于对所述统一接入组件31分发的消息进行预处理。
44.具体的,所述线程池组件32提供可配置化的参数维护功能,依据各线程阻塞与工作状态,对接入组件分发的消息进行预处理,并依据主题标和类型标,放入相应消息队列中,通过bind()方法进行绑定;接收队列指针的唤醒回调,将待处理消息转投递至处理器
组件进行消费处理。
45.所述核心处理服务器模块30还包括高性能队列组件33,所述高性能队列组件33与所述线程池组件32连接,所述高性能队列组件33用于接收所述线程池组件32分发的消息。
46.具体的,所述高性能队列组件33维护disruptor队列,接收线程池分发的消息,并为各个队列维护独立指针,通过指针前后位移实现消息放入取出,通过bind()与awake()方法回调工作线程,回传消息至处理器组件进行实际消费。
47.所述核心处理服务器模块30还包括中央处理器组件34,所述中央处理器组件34用于对接收到的消息进行处理消费。
48.具体的,所述中央处理器组件34设计具有取样处理器,问题处理器,心跳处理器,消息树处理器,业务处理器五种类型处理器,分别针对各主题类型消息进行处理消费;处理前将持久化消息至数据库模块,实现高效、可靠非功能性要求。以存款系统中发生转账业务,并在转账后产生了余额变动消息,此时当拉取消息队列组件中消息信息时,发现标识为

businesstype’时,接入层将启动拦截器,并将该消息转发至业务处理器,对该消息进行消费并存在数据库中,供该本系统加工业务监控固定报表时使用。
49.在本技术的分布式监控系统的一实施例中,所述中央处理器组件34包括取样处理器、问题处理器、心跳处理器、消息树处理器以及业务处理器中的至少一种。
50.在本技术的分布式监控系统的一实施例中,还包括共享组件远程库模块,所述共享组件远程库模块与所述状态采集模块10连接,所述共享组件远程库模块用于托管所述状态采集模块10采集到的日志文件源码。
51.可选的,本技术的共享组件远程库模块可以基于maven远程仓库建立,主要托管状态采集模块10源码,配合spring boot技术栈下开发态配置的pom.xml文件,开发态时随应用系统构建部署。
52.在本技术的分布式监控系统的一实施例中,还包括数据库存储模块,所述数据库存储模块与所述核心处理服务器模块30连接,所述数据库存储模块用于持久化存储所述核心处理服务器接收到的消息。
53.可选的,本技术的数据库存储模块可以依托于cassandra和clickhouse进行建设,实现消息持久化存储,采用列式存储模式,可实现实时性高的数据聚合功能。
54.在本技术的分布式监控系统的一实施例中,还包括源码版本托管模块,所述源码版本托管模块包括用于对源码进行版本管理的离线中央仓库。
55.可选的,本技术的源码版本托管模块可以建立gitlab离线中央仓库,负责对本系统所有源码进行版本管理;应具备版本管理策略,支持多分支并行管理;共享组件远程库模块、kafka集群模块20、核心处理服务器模块30、数据库模块均需通过本模块进行代码统一管理。
56.有上述内容可知,本技术通过采用kafka cluster lambda架构设计系统,真正实现了分布式架构自动化监控运维,并提供高质量运维报表分析展示,克服了集中式架构下,人工运维带来的效率低,定位慢,操作难等弊端。
57.本技术将分布式运维与报表分析全流程有效解耦为七个系统进行实现:组件远程库,源码托管,kafka集群,核心处理,数据库存储,状态采集,前端展示七大模块。
58.源码托管模块,通过github离线中央仓库集中管理的方式,管理全系统源码版本,
实现集中控制,分支并行开发有效管控;
59.组件远程库模块,提供了开发态源码拉取管控功能,配合spring pom.xml文件,实现自动化构建部署,实现采集器的无感知嵌入;
60.kafka集群模块,实现了物理资源的最大化利用,并通过充分使用计算资源,完成日志处理,主题打标等工作,具备高可用,高并行特性,处理效率大幅度提升;
61.核心处理模块,通过线程池 高性能队列,结合分主题的处理器挂载处理模式,实现全主题消息的自动高效,为运维决策与报表分析生成提供基础数据;
62.数据库存储模块,通过列式存储数据库方案,实现高性能高可靠的数据聚合处理功能,并提高系统整体可靠性;
63.状态采集模块,通过自动打点技术,及java agent和client jar包多形式实现,有效应对分布式架构下采集难的问题,大大减少开发难度并提升状态采集全面度;
64.前端展示模块,实时ui绘制并提供条件筛选,模糊查询,运维监控统计,报表定制展示,视图展示等功能,有效降低运维人员分析监控难度,提高运维质量,真正实现了端到端的可配置化分布式运维监控及报表分析,提供非常友好的用户体验,极大的提高开发与运维效率。
65.从硬件层面来说,为了能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求,本技术提供一种用于实现所述分布式监控系统中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
66.处理器(processor)、存储器(memory)、通信接口(communications interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现分布式监控系统与核心业务系统、用户终端以及相关数据库等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的分布式监控系统的实施例,以及分布式监控系统的实施例进行实施,其内容被合并于此,重复之处不再赘述。
67.可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(pda)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
68.在实际应用中,分布式监控系统的部分可以在如上述内容所述的电子设备侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本技术对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
69.上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
70.图4为本技术实施例的电子设备9600的系统构成的示意框图。如图4所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图4是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现
电信功能或其他功能。
71.一实施例中,分布式监控系统功能可以被集成到中央处理器9100中。
72.从上述描述可知,本技术实施例提供的电子设备,通过设置状态采集模块、kafka集群模块、核心处理服务器模块以及监控展示模块,由此能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求。
73.在另一个实施方式中,分布式监控系统可以与中央处理器9100分开配置,例如可以将分布式监控系统配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现分布式监控系统功能。
74.如图4所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图4中所示的所有部件;此外,电子设备9600还可以包括图4中没有示出的部件,可以参考现有技术。
75.如图4所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
76.其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
77.输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为lcd显示器,但并不限于此。
78.该存储器9140可以是固态存储器,例如,只读存储器(rom)、随机存取存储器(ram)、sim卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为eprom等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
79.存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
80.通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
81.基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可
以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
82.本技术的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的分布式监控系统中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的分布式监控系统的全部步骤。
83.从上述描述可知,本技术实施例提供的计算机可读存储介质,通过设置状态采集模块、kafka集群模块、核心处理服务器模块以及监控展示模块,由此能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求。
84.本技术的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的分布式监控系统中全部步骤的一种计算机程序产品,该计算机程序/指令被处理器执行时实现所述的分布式监控系统。
85.从上述描述可知,本技术实施例提供的计算机程序产品,通过设置状态采集模块、kafka集群模块、核心处理服务器模块以及监控展示模块,由此能够提高运维系统的吞吐率与处理效率,可实现高容错、低延迟、可扩展非功能要求。
86.本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
87.本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
88.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
89.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
90.本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献