本发明专利技术公开了一种分布式系统资源处理方法,涉及分布式系统资源监控管理技术领域。该分布式系统资源处理方法,包括某个随机节点随机选择一个邻近节点,将其自身的ARP信息打包到一个标记为GRQ的消息中,并将其发送给选定的邻近节点。该算法基于GOSSIP算法的改进。经过一定次数节点之间的信息交互后,每个节点将获得整个系统中的所有资源监控信息,每个节点可以从可用性、可靠性和性能方面评估其他所有节点,相对于现有技术而言,在分布式系统非常庞大的情况下也能保持其可伸缩性和快速收敛性,系统所有节点的快速监控及报错响应,而且系统监控达成一致性的时间复杂度不会随着系统线性扩容而线性增长。统线性扩容而线性增长。统线性扩容而线性增长。
【技术实现步骤摘要】
一种分布式系统资源处理方法
[0001]本专利技术涉及分布式系统资源监控管理
,具体为一种分布式系统资源处理方法。
技术介绍
[0002]大规模分布式系统中的资源管理监控是一个复杂的过程,分布式系统是高度动态的系统,其中任何节点可以不受限制地加入和离开系统,分布式系统由多个独立的计算机组成,节点之间通过网络协议交互实现一个共同的任务目标。从外部看来,就像一个单节点系统。
[0003]Gossip协议是大规模分布式系统中常用的算法。gossip算法是健壮,灵活和简单的,gossip协议在分布式系统内具有极高的信息传播效率,使得gossip协议非常适用于分布式系统的自我管理,Gossip协议主要缺点是在分布式系统网络中会发送大量的冗余信息,会对分布式系统的收敛性造成影响;
[0004]传统的资源管理和容错机制十分低效,不便实现系统所有节点的快速监控及报错响应,而且系统监控达成一致性的时间复杂度会随着系统线性扩容而线性增长,在分布式系统非常庞大的情况下难以保持其可伸缩性和快速收敛性。
技术实现思路
[0005]解决的技术问题
[0006]针对现有技术的不足,本专利技术提供了一种分布式系统资源处理方法,解决了传统的资源管理和容错机制十分低效,分布式系统非常庞大的情况下难以保持其可伸缩性和快速收敛性的问题。
[0007]技术方案
[0008]为实现以上目的,本专利技术通过以下技术方案予以实现:一种分布式系统资源处理方法,包括以下步骤:
[0009]第一步、某个节点随机选择一个邻近节点,将其自身的ARP信息打包到一个标记为GRQ的消息中,并将其发送给选定的邻近节点;
[0010]第二步、该节点在规定的超时时间内等待邻近节点的响应,根据响应时间,该节点将根据一个预先设定的阈值来评估邻近节点的可用性;
[0011]同时,该节点也可以收到来自其邻近其他节点的其他GRQ请求;
[0012]第三步、当一轮交互循环的超时时间到时,节点将处理在gossip信息交换期间从其邻近节点收到的GRP信息,并更新当前节点GT表信息;
[0013]第四步、完成GT表中的信息更新后,执行新一轮的更新。
[0014]进一步地,每个所述节点维护一个GT表,每个所述节点都执行两个线程:
[0015]活动线程,发送GRQ请求,选择一个邻近节点并向其发送交换信息的请求;
[0016]被动线程,节点等待其他节点的请求,并使用其本地ARP信息进行响应。
[0017]进一步地,每一轮循环之后,判断节点ARP信息有更新,若是,则更新GT表,并根据当前的GT表信息,节点可以评估系统的全局负载:
[0018][0019]其中,P
i
为分布网络中单一节点;N为分布式网络中节点总数;map.get为获取该节点负载值。
[0020]进一步地,所述第一步中节点选择一个随机的邻近节点算法如下:
[0021]key=IP&(1<<24);
[0022]其中,key为节点计算出的key值,用于GT表哈希主键;IP为节点ip;<<为左移运算符。
[0023]进一步地,还包括用不同的节点个数执行了多次模拟测试,并记录每个节点执行的gossip的次数,计算所有节点发起的轮询次数,以及算法收敛到所有节点信息一致性后的平均次数。
[0024]进一步地,所述一个节点发起的轮询次数由在其本地GT表完成之前执行的次数表示,对于一些节点比其他节点更快地到达最终状态,使用加权平均计算平均查询次数。
[0025]进一步地,系统所有节点达到一致性的平均次数计算公式为:
[0026][0027]其中,N是节点数目,x是完成获取所有节点信息的节点个数,w是与每一节点关联的查询次数,x
i
为在指定次数获取到全局负载的节点个数;w
i
为节点获取全局节点负载所需要的次数。
[0028]进一步地,分布式系统具有网络状态和聚类系数两个基本度量指标,所述网络状态异常时节点不能与其他全部或部分节点通信,所述聚类系数用于衡量网络内部结构,与网络的局部内聚性有关,并衡量两个具有共同邻居的节点连接的概率,聚类系数的计算公式如下:
[0029][0030]其中,E
i
为通过i邻节点的关系数,可借助经过i的三角形数得到;k
i
为i的一阶邻节点。
[0031]进一步地,所述一个节点与k个相邻节点的连接数计算公式如下:
[0032][0033]一种分布式系统资源处理装置,包括发送模块,接收模块,更新模块和循环模块,其中:
[0034]发送模块,用于使某个随机节点随机选择一个邻近节点,将其自身的ARP信息打包到一个标记为GRQ的消息中,并将其发送给选定的邻近节点;
[0035]接收模块,用于使该节点在规定的超时时间内等待邻近节点的响应,根据响应时间,该节点将根据一个预先设定的阈值来评估邻近节点的可用性,同时,该节点也可以收到来自其邻近其他节点的其他GRQ请求;
[0036]更新模块,用于在一轮交互循环的超时时间到时,节点将处理在gossip信息交换期间从其邻近节点收到的GRP信息,它将更新当前节点GT表中的信息;
[0037]循环模块,用于完成GT表中的信息更新后,执行新一轮的更新。
[0038]有益效果
[0039]本专利技术具有以下有益效果:
[0040]该算法基于GOSSIP算法的改进。经过一定次数节点之间的信息交互后,每个节点将获得整个系统中的所有资源监控信息,每个节点可以从可用性、可靠性和性能方面评估其他所有节点,相对于现有技术而言,在分布式系统非常庞大的情况下也能保持其可伸缩性和快速收敛性,系统所有节点的快速监控及报错响应,而且系统监控达成一致性的时间复杂度不会随着系统线性扩容而线性增长。
[0041]当然,实施本专利技术的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
[0042]图1为本专利技术算法流程图;
[0043]图2为本专利技术活动线程gossip信息交互示意图;
[0044]图3为本专利技术被动线程gossip信息交互示意图;
[0045]图4为本专利技术GT表信息示意图;
[0046]图5为本专利技术节点1节点2的GT表信息示意图;
[0047]图6为本专利技术节点3节点4的GT表信息示意图;
[0048]图7为本专利技术节点5节点6的GT表信息示意图;
[0049]图8为本专利技术节点交互gossip信息示意图;
[0050]图9为本专利技术不同集群规模达到一致性需要的平均次数示意图。
具体实施方式
[0051]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种分布式系统资源处理方法,其特征在于:包括以下步骤:第一步、某个节点随机选择一个邻近节点,将其自身的ARP信息打包到一个标记为GRQ的消息中,并将其发送给选定的邻近节点;第二步、该节点在规定的超时时间内等待邻近节点的响应,根据响应时间,该节点将根据一个预先设定的阈值来评估邻近节点的可用性;同时,该节点也可以收到来自其邻近其他节点的其他GRQ请求;第三步、当一轮交互循环的超时时间到时,节点将处理在gossip信息交换期间从其邻近节点收到的GRP信息,并更新当前节点GT表信息;第四步、完成GT表中的信息更新后,执行新一轮的更新。2.根据权利要求1所述的一种分布式系统资源处理方法,其特征在于:每个所述节点维护一个GT表,每个所述节点都执行两个线程:活动线程,发送GRQ请求,选择一个邻近节点并向其发送交换信息的请求;被动线程,节点等待其他节点的请求,并使用其本地ARP信息进行响应。3.根据权利要求1所述的一种分布式系统资源处理方法,其特征在于:每一轮循环之后,判断节点ARP信息有更新,若是,则更新GT表,并根据当前的GT表信息,节点可以评估系统的全局负载:其中,P
i
为分布网络中单一节点;N为分布式网络中节点总数;map.get为获取该节点负载值。4.根据权利要求1所述的一种分布式系统资源处理方法,其特征在于:所述第一步中节点选择一个随机的邻近节点算法如下:key=IP&(1<<24);其中,key为节点计算出的key值,用于GT表哈希主键;IP为节点ip;<<为左移运算符。5.根据权利要求1所述的一种分布式系统资源处理方法,其特征在于:还包括用不同的节点个数执行了多次模拟测试,并记录每个节点执行的gossip的次数,计算所有节点发起的轮询次数,以及算法收敛到所有节点信息一致性后的平均次数。6.根据权利要求5所述的一种分布式系统资源处理方法...
【专利技术属性】
技术研发人员:蔡东方,王舒祺,仝国军,周卿,倪闯,
申请(专利权)人:天翼云科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。