CN106254540B - 一种适用于分布式系统的节点服务监控系统及实现方法 - Google Patents
一种适用于分布式系统的节点服务监控系统及实现方法 Download PDFInfo
- Publication number
- CN106254540B CN106254540B CN201610850442.4A CN201610850442A CN106254540B CN 106254540 B CN106254540 B CN 106254540B CN 201610850442 A CN201610850442 A CN 201610850442A CN 106254540 B CN106254540 B CN 106254540B
- Authority
- CN
- China
- Prior art keywords
- node
- node serve
- database
- information
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及分布式系统和监控技术领域,特别是一种适用于分布式系统的节点服务监控系统及实现方法。本发明系统包括服务控制器和节点服务两大模块,节点服务模块分布在各个分布式节点,服务启动时读取配置文件并定时上报服务信息到所述服务控制器模块。服务控制器模块进一步包括通信子模块、定时器子模块、内存缓存和数据库子模块。通信子模块接受各节点服务的状态汇报并保存在内存缓存;定时器子模块读取并过滤内存缓存中的节点服务信息,调用数据库子模块读取数据库中节点服务状态信息;然后,同步内存缓存和数据库节点服务信息。本发明提出了一种通用的监控分布式系统中各个分布式节点服务状态的方法及系统,保证了分布式节点服务状态的实时性和准确性。
Description
技术领域
本发明涉及分布式系统和监控技术领域,特别是一种适用于分布式系统的节点服务监控系统及实现方法。
背景技术
分布式系统实现过程中,经常需要对各个分布式节点服务进行状态监控管理,以确保系统能够实时的掌握各个节点服务的运行情况,保证服务控制器能够将请求正确的转发到各个正常的节点服务进行处理。目前通常的监控方法为:监控端定时向各个被监控端发送网络包,通过节点服务的响应情况来判断各个服务的状态信息,然后更新到数据库进行保存。这种方法可行但是存在如下弊端:
1、监控数据量大。每个定时周期内,监控端和所有被监控端之间需要至少两次数据通信才能实现状态的实时更新。
2、数据库操作频繁。没有内存缓存机制带来所有数据都必须经过数据库操作才能获取,并且需要针对每一条数据库记录进行相应的轮询判断处理。
3、监控数据信息不对称。网络通信的延迟以及数据库操作的大负载很容易引起分布式节点服务的状态更新不及时,出现信息不对称现象。
发明内容
本发明解决的技术问题之一在于提出了一种适用于分布式系统的节点服务监控系统,保证了分布式节点服务状态的实时性和准确性。
本发明解决的技术问题之二在于提出了一种适用于分布式系统的节点服务监控方法,保证了分布式节点服务状态的实时性和准确性。
本发明解决上述技术问题之一的技术方案是:
所述的系统包括服务控制器模块和节点服务两大模块;
所述节点服务模块分布在各个分布式节点,服务启动时读取配置文件并定时上报节点服务信息到所述服务控制器模块;
所述服务控制器模块进一步包括通信子模块、定时器子模块、内存缓存和数据库子模块;
所述通信子模块负责与所述节点服务模块通信,接受各节点服务的信息汇报并保存到内存缓存;
所述的内存缓存是指服务控制器在系统内存中开辟了一块内存空间,用以存放各个节点服务信息的结构化数据;
所述的定时器子模块读取并过滤内存缓存中的节点服务信息,调用数据库子模块读取数据库中节点服务状态信息;然后,同步内存缓存和数据库节点服务信息;
所述的数据库子模块负责数据库操作,包括:数据库对应表中节点服务信息的写入、读取和更新。
所述配置文件包括有服务控制器所在节点的主机名和通信服务IP地址。
所述的结构化数据是指包括节点名称和节点对象的结构数据;所述的节点对象进一步包括节点名称、节点IP、节点服务注册时间、节点服务更新时间、节点服务状态更新次数。
本发明解决上述技术问题之二的技术方案是:
所述的方法包括如下步骤:
(1)节点服务启动时读取配置文件并定时上报节点服务信息到所述服务控制器模块;
(2)通信子模块接受各节点服务的信息汇报并保存在内存缓存;
(3)控制定时器子模块读取并过滤内存缓存中的节点服务信息;
(4)控制定时器子模块调用数据库子模块读取数据库中节点服务信息;
(5)控制定时器子模块同步内存缓存和数据库节点服务信息。
所述的过滤内存缓存中的节点服务信息具体包括:
依次读取内存缓存中保存的各个节点服务信息;
判断节点服务更新时间与当前时间的差值是否满足服务更新超时时间;
移除服务更新超时的节点服务。
所述定时器子模块作为服务控制器模块中启动的一个定时线程,实现节点服务信息的读取、调用、同步。
由数据库子模块负责数据库操作,具体包括:
将节点服务信息写入数据库对应表中保存;
从数据库对应表中读取节点服务信息数据;
更新数据库对应表中的节点服务信息。
所述的同步内存缓存与数据库节点服务信息是指将过滤后的节点服务进一步与数据库中的节点服务信息进行同步,具体包括:
内存缓存有,数据库没有的,需要新增和修改为节点服务为连接状态;
数据库有,内存缓存没有的,需要修改为节点服务为失去连接状态。
本发明方案的有益效果如下:
1、本发明提供一种适用于分布式系统的节点服务监控方法,可以保证对分布式系统中分布式节点服务状态的实时性和准确性监控。
2、本发明的方法具有轻量级性和通用性,可以快速的集成到已存在的分布式系统服务中;避免了采用开源监控工具或者缓存工具所带来的复杂性。
3、本发明提供的服务监控方法架构更新颖。采用了一种逆向思维监控实现方法,被监控端主动汇报状态信息到监控端,监控端只需要定时维护本地内存缓存数据和数据库的同步即可;并且在同步的过程中采用先对缓存过滤后与数据库同步的方法来提高同步效率。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明的流程图。
图2为本发明的架构图。
具体实施方式
本发明提出一种逆向的思维方法,采用被监控端主动定时向监控服务端汇报节点服务状态的形式,监控服务端通过内存缓存各节点上报的服务信息,然后利用定时线程并执行先过滤内存缓存内容、后同步数据库数据的方法来实现分布式系统中节点服务监控的实时性和正确性。
请参见图1、2,为本发明实施例所提供的一种适用于分布式系统的节点服务监控方法流程图。下面分别对其各个流程具体实现进行描述。
首先节点服务模块配置文件部分如下:
[root@gcloud51108~]#cat/etc/gcloud-appdeploy-node.cfg
#gcloud日志输出配置,debug是开发模式,release是生产模式
LOG_PROPERTIES=debug
#配置应用服务控制器节点名字
CONTROLLER_HOSTNAME=gcloud5161
#RabbitMq服务端通信IP
RABBITMQ_SERVER_IP=20.251.51.61
……
节点服务模块和服务控制器模块通信过程中共同使用的节点服务信息元数据结构定义:
服务控制器模块定义节点信息管理类,采用单例模式,节点服务信息都缓存在此单例对象中:
服务控制器模块的通信子模块主要负责与各个节点的通信,并将接受到的节点信息进行注册,保存到内存缓存中,具体定义如下:
接着定义本发明最重要的服务控制器定时器子模块:
以上描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出实质性创造所获得的方案,都属于本发明保护的范围。
Claims (6)
1.一种适用于分布式系统的节点服务监控系统,其特征在于,所述的系统包括服务控制器模块和节点服务两大模块;
所述节点服务模块分布在各个分布式节点,服务启动时读取配置文件并定时上报节点服务信息到所述服务控制器模块;
所述服务控制器模块进一步包括通信子模块、定时器子模块、内存缓存和数据库子模块;
所述通信子模块负责与所述节点服务模块通信,接受各节点服务的信息汇报并保存到内存缓存;
所述的内存缓存是指服务控制器在系统内存中开辟了一块内存空间,用以存放各个节点服务信息的结构化数据;
所述的定时器子模块读取并过滤内存缓存中的节点服务信息,调用数据库子模块读取数据库中节点服务状态信息;然后,同步内存缓存和数据库节点服务信息;
所述的数据库子模块负责数据库操作,包括:数据库对应表中节点服务信息的写入、读取和更新;
所述配置文件包括有服务控制器所在节点的主机名和通信服务IP地址;
所述的结构化数据是指包括节点名称和节点对象的结构数据;所述的节点对象进一步包括节点名称、节点IP、节点服务注册时间、节点服务更新时间、节点服务状态更新次数。
2.一种权利要求1所述的适用于分布式系统的节点服务监控系统的实现方法,其特征在于,所述的方法包括如下步骤:
(1)节点服务启动时读取配置文件并定时上报节点服务信息到所述服务控制器模块;
(2)通信子模块接受各节点服务的信息汇报并保存在内存缓存;
(3)控制定时器子模块读取并过滤内存缓存中的节点服务信息;
(4)控制定时器子模块调用数据库子模块读取数据库中节点服务信息;
(5)控制定时器子模块同步内存缓存和数据库节点服务信息;
所述的过滤内存缓存中的节点服务信息具体包括:
依次读取内存缓存中保存的各个节点服务信息;
判断节点服务更新时间与当前时间的差值是否满足服务更新超时时间;
移除服务更新超时的节点服务。
3.根据权利要求2所述的方法,其特征在于,所述定时器子模块作为服务控制器模块中启动的一个定时线程,实现节点服务信息的读取、调用、同步。
4.根据权利要求2或3所述的方法,其特征在于,
由数据库子模块负责数据库操作,具体包括:
将节点服务信息写入数据库对应表中保存;
从数据库对应表中读取节点服务信息数据;
更新数据库对应表中的节点服务信息。
5.根据权利要求2或3所述的方法,其特征在于,所述的同步内存缓存与数据库节点服务信息是指将过滤后的节点服务进一步与数据库中的节点服务信息进行同步,具体包括:
内存缓存有,数据库没有的,需要新增和修改为节点服务为连接状态;
数据库有,内存缓存没有的,需要修改为节点服务为失去连接状态。
6.根据权利要求4所述的方法,其特征在于,所述的同步内存缓存与数据库节点服务信息是指将过滤后的节点服务进一步与数据库中的节点服务信息进行同步,具体包括:
内存缓存有,数据库没有的,需要新增和修改为节点服务为连接状态;
数据库有,内存缓存没有的,需要修改为节点服务为失去连接状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610850442.4A CN106254540B (zh) | 2016-09-26 | 2016-09-26 | 一种适用于分布式系统的节点服务监控系统及实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610850442.4A CN106254540B (zh) | 2016-09-26 | 2016-09-26 | 一种适用于分布式系统的节点服务监控系统及实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106254540A CN106254540A (zh) | 2016-12-21 |
CN106254540B true CN106254540B (zh) | 2019-11-15 |
Family
ID=57611840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610850442.4A Active CN106254540B (zh) | 2016-09-26 | 2016-09-26 | 一种适用于分布式系统的节点服务监控系统及实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106254540B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107451254B (zh) * | 2017-07-31 | 2020-08-07 | 广州市食蚁兽网络技术有限公司 | 一种生成数据库表数据唯一标识的方法 |
CN110928633A (zh) * | 2018-09-19 | 2020-03-27 | 北京国双科技有限公司 | 一种服务器连接状态的确定方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493826A (zh) * | 2008-12-23 | 2009-07-29 | 中兴通讯股份有限公司 | 基于web应用的数据库系统及其数据管理方法 |
CN101511098A (zh) * | 2009-02-10 | 2009-08-19 | 中兴通讯股份有限公司 | 一种分布式网元任务管理系统及方法 |
CN104657435A (zh) * | 2015-01-30 | 2015-05-27 | 杭州华三通信技术有限公司 | 一种应用数据的存储管理方法和网络管理系统 |
CN105959130A (zh) * | 2016-04-13 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种基于大数据运维的监控方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2676925C (en) * | 2007-02-15 | 2016-01-05 | Tyco Telecommunications (Us) Inc. | Distributed network management system and method |
-
2016
- 2016-09-26 CN CN201610850442.4A patent/CN106254540B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493826A (zh) * | 2008-12-23 | 2009-07-29 | 中兴通讯股份有限公司 | 基于web应用的数据库系统及其数据管理方法 |
CN101511098A (zh) * | 2009-02-10 | 2009-08-19 | 中兴通讯股份有限公司 | 一种分布式网元任务管理系统及方法 |
CN104657435A (zh) * | 2015-01-30 | 2015-05-27 | 杭州华三通信技术有限公司 | 一种应用数据的存储管理方法和网络管理系统 |
CN105959130A (zh) * | 2016-04-13 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种基于大数据运维的监控方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106254540A (zh) | 2016-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111277672B (zh) | 一种基于非阻塞输入输出模型的能源物联网数据采集方法 | |
AT512528B1 (de) | Verfahren und Apparat zur Vermittlung von zeitgesteuerten und ereignisgesteuerten Nachrichten | |
CN105915633A (zh) | 自动化运维系统和方法 | |
CN109547240B (zh) | 基于边缘计算的智能设备以及接入与设备的解析方法 | |
CN105376101B (zh) | 一种实物设备接入虚拟网络的方法及系统 | |
CN106453541A (zh) | 一种数据同步的方法、服务器以及数据同步系统 | |
CN105471622A (zh) | 一种基于Galera的控制节点主备切换的高可用方法及系统 | |
CN106254540B (zh) | 一种适用于分布式系统的节点服务监控系统及实现方法 | |
CN108173959A (zh) | 一种集群存储系统 | |
CN111127250B (zh) | 一种电力数据监控事件分析系统及方法 | |
CN107357681A (zh) | 基于salt的Zookeeper备份管理系统及方法 | |
CN111432025A (zh) | 一种面向云边协同的分布式服务目录管理方法及系统 | |
CN110059829A (zh) | 一种异步参数服务器高效并行架构与方法 | |
CN103678522B (zh) | 一种智能变电站计量系统数据采集和转换方法 | |
CN104933495A (zh) | 基于Android的移动终端上的工作任务考核系统 | |
CN110493140A (zh) | 信息网络系统中链路事件的感知方法及其运行系统 | |
CN110740195A (zh) | 一种基于消息引擎的分布式系统数据同步方法及系统 | |
CN113342826A (zh) | 一种对不同数据采集引擎的数据操作进行统一管理的方法、存储介质及系统 | |
CN113722182B (zh) | 一种并行异步高效采集分析方法及其系统 | |
CN107707672A (zh) | 一种负载均衡的代码重构的方法、装置及设备 | |
CN102891778B (zh) | 自动化测试中避免环路的控制系统及方法 | |
CN103023793A (zh) | 一种地址解析协议表的管理装置及管理方法 | |
CN108011751B (zh) | 一种机载FlexRay通信接口装置与方法 | |
CN205545296U (zh) | 基于轨道交通的时间同步系统 | |
CN105281778B (zh) | 监控数据自适应压缩方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 523808 19th Floor, Cloud Computing Center, Chinese Academy of Sciences, No. 1 Kehui Road, Songshan Lake Hi-tech Industrial Development Zone, Dongguan City, Guangdong Province Applicant after: G-Cloud Technology Co., Ltd. Address before: 523808 Guangdong province Dongguan City Songshan Lake Science and Technology Industrial Park Building No. 14 Keyuan pine Applicant before: G-Cloud Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |