一种分布式服务状态检测器及方法技术

技术编号:13049387 阅读:89 留言:0更新日期:2016-03-23 15:32
本发明专利技术公开了一种分布式服务状态检测器和方法,包括主服务和端服务两部分;主服务部分主要用于当前节点及其所有子节点的服务状态信息管理和服务树模型管理,端服务部分主要用于采集服务器基本信息和获取应用服务自定义接口信息;本产品和方法使用树形结构的多级监视方式,将服务监视过程分散到各个分布式服务节点上,可以对分布在不同网络环境中的分布式服务实现统一监视,运用分布式监视和分布式存储提高了服务监视的效率、有效的减小了监视服务器的负载。

【技术实现步骤摘要】
一种分布式服务状态检测器及方法
本专利技术涉电力行业分布式系统服务监视领域,具体涉及一种分布式服务状态检测器及方法。
技术介绍
随着电力行业中分布式部署的系统越来越多,以及各个系统之间信息交互、数据集成的应用越来越广泛,如何保证各个系统服务的稳定运行,需要从系统层面对分布式部署的服务做统一的服务状态监视及管理。目前电力行业中分布式部署的系统要实现各个系统的服务状态监视,采用的是由一台监视服务器分别与其它应用系统做接口获取应用服务运行状态的方法,这种一对多的监视方式过多的依赖于监视服务器,主要存在以下三方面的问题:1、性能问题:当分布式服务过多的时候,监视服务器获取其它系统的状态的效率明显降低,特别是其中任何一个服务通信出问题都会影响整体的效率,即使采用并发处理的方式也会造成监视服务器负载过重同时也会造成网络拥堵的情况;2、服务监视接口复杂:监视接口与应用系统之间的耦合度高,接口的实现和集成方式复杂,扩展性较差;3、网络环境适应性差:一台监视服务器直接监视其它分布式服务,要求监视服务器与其它分布式服务都要在同一个网络内,无法对分布在不同网络环境中的分布式服务进行统一监视。
技术实现思路
本专利技术的目的是为了解决上述问题,提供了一种分布式服务状态检测器及方法,该检测器及方法使用树形结构的多级监视方式,将服务监视过程分散到各个分布式服务节点上,可以对分布在不同网络环境中的分布式服务实现统一监视。为实现上述目的,本专利技术采用下述技术方案:一种分布式服务状态检测器,包括:主服务部分和端服务部分;所述主服务部分和端服务部分通信;所述主服务部分用于当前节点及其所有子节点的服务状态信息管理和服务树模型管理,所述端服务部分用于采集当前节点所在服务器的基本信息,获取应用服务自定义接口信息。进一步地,分布式服务状态检测器独立安装运行到各分布式服务器上,监视分布式服务器的运行状态;或者通过接口实现的方式与分布式应用服务集成,获取更详细的服务状态信息。进一步地,所述主服务部分包括:服务信息注册组件、服务状态数据管理组件、服务树模型管理组件和通信组件;其中:所述服务信息注册组件,用来存储当前节点服务及所有子节点服务的基本信息;所述服务状态数据管理组件,用来管理服务树模型中当前节点和所有子节点的服务状态信息;所述服务树模型管理组件,用来构建服务树模型和解析服务树模型并对服务模型的拓扑进行搜索;所述通信组件,用于各个分布式服务节点中的服务状态检测器之间的数据传输。所述服务信息注册组件采用手工注册和模型树注册两种方式,其中,手工注册用于根节点服务信息注册,模型树注册用于根节点发布注册信息后子节点根据接收的服务信息模型自动注册。进一步地,所述端服务部分包括:服务状态信息采集组件和自定义接口组件;其中,所述服务状态信息采集组件用于采集当前节点所在服务器的基本信息,所述自定义接口组件用于与分布式应用服务集成,通过自定义接口,实现对分布式应用服务的状态监视。所述当前节点所在服务器的基本信息包括:CPU使用率、硬盘使用率、网络使用率和内存利用率。进一步地,分布式服务状态检测器采用树形数据结构,对分布式应用服务状态进行逐级监视,树形数据结构中每个节点监视其所有子节点的状态信息,通过获取各子节点的状态信息,得到分布式系统的所有服务状态信息。一种分布式服务状态检测方法,包括以下步骤:(1)为每个需要监视的分布式服务安装权利要求1-6所述的任一分布式服务状态检测器;(2)选取任意一个安装有分布式服务状态检测器的分布式服务为根节点服务,并在该根节点服务注册其它分布式服务的信息;(3)根节点服务根据注册的其它分布式服务的信息,生成服务树模型;(4)根节点服务发布服务树模型给子节点服务;(5)子节点服务接收到上级节点发布的服务树模型,解析模型并更新服务注册信息,如果还有子节点,则发布服务树模型给子节点,如果没有子节点,则执行下一步骤;(6)各分布式服务节点定期采集当前服务器的基本信息并向子节点获取服务状态信息,如果获取成功则更新服务状态数据,如果获取失败,则解析模型判断是否有下级节点,如果有则再向下一级获取孙节点的服务状态信息,直到获取状态成功或者已无下级节点。进一步地,所述步骤(6)中所述各节点定期采集当前服务器的基本信息包括CPU使用率、硬盘使用率、网络使用率和内存利用率。进一步地,所述步骤(6)中如果分布式应用服务有自定义接口,则各节点定期调用接口并获取应用服务详细信息。本专利技术的有益效果是:本专利技术的分布式服务状态检测器使用树形结构的多级监视方式,将服务监视过程分散到各个分布式服务节点上,可以对分布在不同网络环境中的分布式服务实现统一监视,运用分布式监视和分布式存储提高了服务监视的效率、有效的减小了监视服务器的负载;此外,该检测器易于安装和部署,既可以独立安装运行到服务器上,监视服务器的运行状态,也可以通过接口实现的方式与应用服务集成,获取更详细的服务状态信息。本专利技术的分布式服务状态检测方法具有如下优点:1.状态分布式监视,把状态监视过程分担到各个服务节点中,通过任何一个正常运行的节点,都能获取到所有子节点的信息,提高了服务监视的效率、有效的减小了监视服务器的负载;2.数据分布式存储,以往的分布式系统服务运行状态,只存储在监控服务器中,数据的管理和展示都是在监控服务器中进行。而采用数据分布式存储,将监控数据存储在各个分布式节点中,监控服务器可以向任何一个节点获取到整个分布式节点内所有服务的状态,便于状态信息获取和展示;3.把服务检测程序与应用服务程序有效的解耦,易于安装和部署,易于与应用服务集成;4.采用树服务模型分级检测的实现方法,可以检测不同网络段的服务状态,有效解决了以往用一台监控服务器统一监控所有分布式系统状态要求所有服务必须在同一网络环境的问题。附图说明图1为本专利技术服务状态检测器结构示意图;图2为本专利技术服务状态检测方法流程图。具体实施方式:下面结合附图与实例对本专利技术做进一步说明:参照图1,本专利技术的一种分布式服务状态检测器,包括主服务部分和端服务部分,他们统一部署和安装到应用服务器上;所述主服务部分主要用于当前节点及其所有子节点的服务状态信息管理和服务树模型管理,所述端服务部分主要用于采集服务器基本信息和获取应用服务自定义接口信息。其中,所述主服务部分主要由服务信息注册组件、服务状态数据管理组件、服务树模型管理组件、通信组件四个组件组成:所述服务信息注册组件,用来存储当前节点服务及所有子节点服务的基本信息,如IP地址、监视端口号等,可采用手工注册和模型树注册两种方式,手工注册多在根节点服务信息注册时候使用,模型树注册是在根节点发布注册信息后子节点根据接收的服务信息模型自动注册;所述服务状态数据管理组件,用来管理服务树模型中当前节点和所有子节点的服务状态信息,包括服务状态存储、服务状态获取和更新、服务状态查询读取;所述服务树模型管理组件,用来构建服务树模型和解析服务树模型并对服务模型的拓扑进行搜索;所述通信组件,用于各个节点中的服务状态检测器之间的数据传输。其中,所述端服务部分主要由服务状态信息采集组件和自定义接口组件组成,所述服务状态信息采集组件,主要用于采集当前节点所在服务器的基本信息,包括CPU使用率、硬盘使用率、网络使用率、内存利用率,实本文档来自技高网...
一种分布式服务状态检测器及方法

【技术保护点】
一种分布式服务状态检测器,其特征是,包括:主服务部分和端服务部分;所述主服务部分和端服务部分通信;所述主服务部分用于当前节点及其所有子节点的服务状态信息管理和服务树模型管理,所述端服务部分用于采集当前节点所在服务器的基本信息,获取应用服务自定义接口信息。

【技术特征摘要】
1.一种分布式服务状态检测器,其特征是,包括:主服务部分和端服务部分;所述主服务部分和端服务部分通信;所述主服务部分用于当前节点及其所有子节点的服务状态信息管理和服务树模型管理,所述端服务部分用于采集当前节点所在服务器的基本信息,获取应用服务自定义接口信息;所述主服务部分包括:服务信息注册组件、服务状态数据管理组件、服务树模型管理组件和通信组件;其中:所述服务信息注册组件,用来存储当前节点服务及所有子节点服务的基本信息;所述服务状态数据管理组件,用来管理服务树模型中当前节点和所有子节点的服务状态信息;所述服务树模型管理组件,用来构建服务树模型和解析服务树模型并对服务模型的拓扑进行搜索;所述通信组件,用于各个分布式服务节点中的服务状态检测器之间的数据传输;分布式服务状态检测器独立安装运行到各分布式服务器上,监视分布式服务器的运行状态;或者通过接口实现的方式与分布式应用服务集成,获取更详细的服务状态信息;分布式服务状态检测器采用树形数据结构,对服务状态进行逐级监视,树中每个节点监视它所有子节点的状态信息;将监控数据存储在各个分布式节点中,分布式服务器能够向任何一个节点获取到整个分布式节点内所有服务的状态,便于状态信息获取和展示。2.如权利要求1所述的一种分布式服务状态检测器,其特征是,所述服务信息注册组件采用手工注册和模型树注册两种方式,其中,手工注册用于根节点服务信息注册,模型树注册用于根节点发布注册信息后子节点根据接收的服务信息模型自动注册。3.如权利要求1所述的一种分布式服务状态检测器,其特征是,所述端服务部分包括:服务状态信息采集组件和自定义接口组件;其中,所述服务状态信息采集组件用于采集当前节点所在服务器的基本信息,所述自定义接口组件用于与分布...

【专利技术属性】
技术研发人员:甘言礼李宏伟任玉保刘晓苏宏勋苏振华吴六一
申请(专利权)人:国网技术学院国家电网公司珠海许继芝电网自动化有限公司珠海许继电气有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1