一种分布式系统无效节点判定方法与流程

文档序号:11147591阅读:759来源:国知局
一种分布式系统无效节点判定方法与制造工艺

本发明涉及一种分布式系统无效节点判定方法。



背景技术:

分布式系统(Distributed System)有很多不同的定义,一般认为:“一个分布式系统是一些独立的计算机集合,但是对这个系统的用户来说,系统就像一台计算机一样”。这个定义有两方面的含义:第一,从硬件角度来讲,每台计算机都是自主的;第二,从软件角度来讲,用户将整个系统看做是一台计算机。这两者都是必需的,缺一不可。在一个分布式系统中,一组独立的计算机节点展现给用户的是一个统一的整体,系统拥有多种通用的物理和逻辑资源,可以动态地分配任务,分散的物理和逻辑资源通过计算机网络实现信息交换。主频可达到GHZ的功能强大的微处理器的开发和高速计算机网络的出现是分布式系统的产生的基础。

分布式系统通常由一个管理节点与多个工作节点组成,节点管理是分布式系统系统管理的核心功能之一。管理节点的系统管理进程实时对工作节点的状态进行监督,判断工作节点能否正常工作,将其加入或排除出系统。由于节点自身运行状态和网络传输的可靠性等问题(例如报文只能单向传输),异常的工作节点给系统带来众多不确定性问题,如数据不一致、返回超时等,快速准确的节点管理策略已成为系统管理的难点问题。



技术实现要素:

本发明的目的,在于提供一种分布式系统无效节点判定方法,其可达到更加精准判定节点状态的目标。

为了达成上述目的,本发明的解决方案是:

一种分布式系统无效节点判定方法,包括如下内容:

(1)各节点的进程启动时在网络中间件中注册信息,退出时清理注册信息,网络中间件之间实时同步本节点的进程状态信息;

(2)各节点的系统管理进程定时发送系统管理平安报文,由管理节点的系统管理进程接收并进行节点状态更新;

(3)管理节点的系统管理进程对工作节点依次进行状态检测,判定节点是否正常工作,对于无法正常工作的节点进行退出处理。

上述内容(1)中,当节点退出时,主动注销或被动由网络中间件清理注册信息。

上述内容(1)中,网络中间件之间通过网络平安报文实时同步本节点的进程状态信息,并为上层系统管理模块提供查询接口。

上述网络平安报文包括整体平安报文和变化平安报文,整体平安报文周期性发送,记录了本节点的所有注册引用进程信息;变化平安报文在本节点注册应用程序变化的时候发送。

上述内容(2)中,当系统管理平安报文出现超时,管理节点的系统管理进程向目标节点的系统管理进程主动请求应答,进行进一步确认。

上述内容(3)的详细内容是:管理节点的系统管理程序通过网络中间件访问接口检查对方节点管理进程是否在线:如不在线,再对节点的投运状态进行判断,对于未投运的节点直接判断该节点为故障,做节点退出处理;对于投运的节点进行进一步故障计数,超过阈值判断节点故障,做节点退出处理;如在线,则验证系统管理平安报文是否超时,如超时则请求对方发送系统管理平安报文,若在更长一些的时间段内仍然还收不到,则判断该节点为故障,做节点退出处理;如不超时说明一切正常,将故障计数清零。

采用上述方案后,本发明采用基于网络中间件同步信息和系统管理通讯状态的综合判定方法,管理节点的系统管理进程定期对工作节点的状态进行维护,通过综合网络中间件同步的进程状态信息与管理进程间通讯状态信息,判定节点是否正常工作,使得管理节点可以准确判断工作节点是否处于正常工作状态,及时将异常节点退出系统操作,达到保证系统可靠性与可用性的效果。

附图说明

图1是本发明中分布式系统的层次结构图;

图2是本发明网络中间件间信息同步示意图;

图3是本发明工作节点状态维护流程图。

具体实施方式

以下将结合附图,对本发明的技术方案及有益效果进行详细说明。

首先,对本发明涉及的分布式系统的架构进行说明,如图1所示,自底向上依次是网络层、应用层和系统管理层。其中,网络层屏蔽操作系统差异,对上统一提供网络服务;应用层负责处理具体的应用事务;系统管理层利用网络层对应用服务、网络节点等进行管理。

本发明提供一种分布式系统无效节点判定方法,包括网络中间件间的信息同步技术,系统管理平安报文和探测技术,以及基于这两项技术的工作节点状态判定策略,下面分别介绍。

第一,网络中间件进程注册信息同步功能

节点内部应用进程启动时需要在网络中间件中注册进程信息,退出时主动注销或被动由网络中间件清理注册信息。网络中间件之间实时同步本节点的进程状态信息,并为上层系统管理模块提供查询接口,系统管理模块可以实时获得系统内任意节点及进程的当前状态。如图2所示,网络中间件之间通过平安报文维持各节点中的注册应用进程信息的同步,网络平安报文包括整体平安报文和变化平安报文。

整体平安报文周期性发送,记录了本节点的所有注册引用进程信息。发送整体平安报文的目的是为了让新加入的节点能很快知道本节点的注册应用进程信息,同时不至于因为丢包而使各个节点上保存的注册应用信息不一致。定时发送的报文都是整体平安报文。

变化平安报文在本节点注册应用程序变化的时候发送。注册应用进程变化是指本节点有新的应用程序注册、本节点有应用进程注销、本节点有应用进程的事件订阅信息发生了变化。

通过平安报文维持各节点中的注册应用进程信息的同步的内容包括:节点状态信息、应用进程信息以及注册事件信息,如下所示:

1)节点信息包括:现场名、节点名、节点IP、节点组号、节点状态、链路连接信息等。

2)应用进程信息包括:进程编号、进程注册信息(现场名、节点名、进程注册名);

3)注册事件信息包括:事件数量、注册事件号、事件屏蔽码等。

第二,系统管理平安报文及探测机制

分布式系统内各节点的系统管理进程定时发送系统管理平安报文(可设定为约30秒发送一次),系统管理平安报文由管理节点的系统管理进程接收并进行节点状态更新,用于维护系统管理间通讯状态。系统管理平安报文用于报告当前节点系统管理进程状态,内容包括:报文进程类型标识、报文类型以及时标等。

当系统管理平安报文出现超时,通过主动请求应答的探测技术对目标节点系统管理工作状态进行进一步确认。

第三,工作节点状态判定策略

管理节点的系统管理进程对工作节点依次进行状态检测,如图3所示,具体流程如下所示:

管理节点的系统管理程序通过网络中间件访问接口检查对方节点管理进程是否在线:

1)不在线,说明当前已无法通过网络中间件访问到目标节点,为了避免网络抖动造成误判,还对节点的投运状态进行判断:

a)未投运,说明节点前状态已经是离线,直接判断该节点为故障,做节点退出处理;

b)已投运,说明节点在稍早前的一段时间内还是处于正常运行的状态,为了避免网络抖动造成误判,在此增加故障计数验证,当前故障计数加1,且如果计数超过阈值判断节点故障,做节点退出处理。

2)在线,说明可以通过网络中间件访问到目标节点,但为了避免网络单向传输或不稳定的故障,还需要进一步验证系统管理平安报文的状态,验证目标节点系统管理平安报文是否超时:

a)超时,请求对方发送平安报文,若在更长一些的时间段内仍然还收不到,则判断该节点为故障,做节点退出处理;

b)不超时,说明一切正常,将故障计数清零。

以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1