基于原子广播技术的分布式权限管理方法及系统的制作方法

文档序号:9551424阅读:327来源:国知局
基于原子广播技术的分布式权限管理方法及系统的制作方法
【技术领域】
[0001]本发明涉及一种基于原子广播技术的分布式权限管理方法及系统。
【背景技术】
[0002]在地铁综合监控系统中,每条线路设有几十个车站,各个车站都有各自的子系统需要监控,执行监控需要预先得到它的子系统管理权限,而这些权限是有互斥需求的,也就是说某一个时刻,只有一个操作员可以拥有它的权限。有一些车站,不但可以管理它自己本站权限,也可以通过权限回收和移交方式管理其它站点的权限。这必然会造成某一个车站的子系统权限分布在多个站点。如何解决互斥和同步,是系统设计的难点。传统的解决方案是设置一个中心站点,所有的权限状态数据写操作,都通过中心站点,其他站点,都是通过中心站点进行读写操作。通过设置一个中心站点,确实可以简单的解决权限状态数据的互斥和同步问题。但这里有一明显的不足,就是对中心站点的依赖性太高,假如中心站点服务器出现异常,长时间不能恢复,那么其它站点之间就不能进行同步了。

【发明内容】

[0003]针对现有技术的不足,本发明旨在于提供一种可解决上述技术问题的地铁分布式权限管理系统。
[0004]为实现上述目的,本发明采用如下技术方案:
[0005]—种基于原子广播技术的分布式权限管理方法,应用于地铁管理平台中,其包括:
[0006]选举步骤:各中央级监控服务器采用选举投票方式推荐领导节点,当前领导状态的中央级监控服务器对推荐的领导节点进行统计,以获取票数最高的领导节点,并将票数最高的领导节点设置为有效领导节点,使得对应的中央级监控服务器处于有效领导状态;以及
[0007]同步步骤:该有效领导状态的中央级监控服务器根据来自其他中央级监控服务器的数据同步请求以自身当前的数据信息更新其他中央级监控服务器的信息,以使得所有中央级监控服务器的数据信息同步一致。
[0008]优选地,选举步骤包括以下子步骤:
[0009]步骤S11:当前领导状态的中央级监控服务器向各中央级监控服务器发起选举询问;
[0010]步骤S12:各中央级监控服务器根据接收到的选举询问向该当前领导状态的中央级监控服务器发送选举回复信息,其中,该选举回复信息包括当前领导节点信息、自身节点ID和推荐领导节点信息;
[0011]步骤S13:该当前领导状态的中央级监控服务器根据选举回复信息获取对应的中央监控服务器的节点ID和对应推荐领导节点信息,以生成当次选举的投票记录表;
[0012]步骤S14:该当前领导状态的中央级监控服务器根据当次的投票记录表计算获取推荐领导节点信息的票数最高的中央级监控服务器;
[0013]步骤S15:该当前领导状态的中央级监控服务器判断该票数最高的中央级监控服务器的票数是否大于(n/2+l),其中,η为中央级监控服务器的数量,若是,执行步骤S6 ;若否,返回执行步骤S1 ;以及
[0014]步骤S16:该当前领导状态的中央级监控服务器将当前票数最高的中央级监控服务器设置为有效领导节点。
[0015]优选地,同步步骤包括以下子步骤:
[0016]步骤S31:各中央级监控服务器向有效领导状态的中央级监控服务器发送数据同步请求,其中,该数据同步请求包括对应中央级监控服务器自身的数据状态信息;以及
[0017]步骤S32:有效领导状态的中央级监控服务器根据各中央级监控服务器的数据状态信息对各中央级监控服务器进行数据更新,以使得各中央级监控服务器的最新数据信息与有效领导状态的中央级监控服务器的同步一致。
[0018]—种基于原子广播技术的分布式权限管理系统,应用于地铁管理平台中,其包括若干中央级监控服务器和若干工作站权限服务端;
[0019]各中央级监控服务器采用选举投票方式推荐领导节点,当前领导状态的中央级监控服务器对推荐的领导节点进行统计,以获取票数最高的领导节点,并将票数最高的领导节点设置为有效领导节点,使得对应的中央级监控服务器处于有效领导状态;该有效领导状态的中央级监控服务器根据来自其他中央级监控服务器的数据同步请求以自身当前的数据信息更新其他中央级监控服务器的信息,以使得所有中央级监控服务器的数据信息同步一致;每一中央级监控服务器连接至少一工作站权限服务端,以移交或回收工作站权限服务端的管理权限。
[0020]优选地,在投票选举阶段,当前领导状态的中央级监控服务器向各中央级监控服务器发起选举询问
[0021]各中央级监控服务器根据接收到的选举询问向该当前领导状态的中央级监控服务器发送选举回复信息,其中,该选举回复信息包括当前领导节点信息、自身节点ID和推荐领导节点信息;
[0022]该当前领导状态的中央级监控服务器根据选举回复信息获取对应的中央监控服务器的节点ID和对应推荐领导节点信息,以生成当次选举的投票记录表;
[0023]该当前领导状态的中央级监控服务器根据当次的投票记录表计算获取推荐领导节点信息的票数最高的中央级监控服务器;
[0024]该当前领导状态的中央级监控服务器判断该票数最高的中央级监控服务器的票数是否大于(n/2+l),其中,η为中央级监控服务器的数量,若是,该当前领导状态的中央级监控服务器将当前票数最高的中央级监控服务器设置为有效领导节点;若否,重新发起选举询问。
[0025]优选地,在数据同步阶段,各中央级监控服务器向有效领导状态的中央级监控服务器发送数据同步请求,其中,该数据同步请求包括对应中央级监控服务器自身的数据状态信息;有效领导状态的中央级监控服务器根据各中央级监控服务器的数据状态信息对各中央级监控服务器进行数据更新,以使得各中央级监控服务器的最新数据信息与有效领导状态的中央级监控服务器的同步一致。
[0026]本发明的有益效果至少如下:
[0027]本发明可在当前领导状态的中央级监控服务器奔溃或失去大多数支持时以原子广播方式重新选举出有效领导节点,让所有中央级监控服务器重新同步数据,处于下级的若干工作站权限服务端无论跟哪个中央级监控服务器相连,都可以获取到相同的数据信息。
【附图说明】
[0028]图1为本发明基于原子广播技术的分布式权限管理方法的选举步骤的流程图。
[0029]图2为本发明基于原子广播技术的分布式权限管理系统的架构示意图。
【具体实施方式】
[0030]下面将结合附图以及【具体实施方式】,对本发明做进一步描述:
[0031]请参见图1,本发明涉及一种基于原子广播技术的分布式权限管理方法,应用于地铁管理平台中,其较佳实施方式包括以下步骤:
[0032]选举步骤:各中央级监控服务器采用选举投票方式推荐领导节点,当前领导状态的中央级监控服务器对推荐的领导节点进行统计,以获取票数最高的领导节点,并将票数最高的领导节点设置为有效领导节点,使得对应的中央级监控服务器处于有效领导状态;以及
[0033]同步步骤:该有效领导状态的中央级监控服务器根据来自其他中央级监控服务器的数据同步请求以自身当前的数据信息更新其他中央级监控服务器的信息,以使得所有中央级监控服务器的数据信息同步一致。
[0034]本发明可在当前领导状态的中央级监控服务器奔溃或失去大多数支持时以原子广播方式重新选举出有效领导节点,让所有中央级监控服务器重新同步数据,处于下级的若干工作站权限服务端无论跟哪个中央级监控服务器相连,都可以获取到相同的数据信息。
[0035]本实施例中,选举步骤包括以下子步骤:
[0036]步骤S11:当前领导状态的中央级监控服务器向各中央级监控服务器发起选举询问,以启动选举线程;
[0037]步骤S12:各中央级监控服务器根据接收到的选举询问向该当前领导状态的中央级监控服务器发送选举回复信息,其中,该选举回复信息包括当前领导节点信息、自身节点ID和推荐领导节点信息。
[0038]步骤S13:该当前领导状态的中央级监控服务器根据选举回复信息获取对应的中央监控服务器的节点ID和对应推荐领导节点信息,以生成当次选举的投票记录表;
[0039]步骤S14:该当前领导状态的中央级监控服务器根据当次的投票记录表计算获取推荐领导节点信息的票数最高的中央级监控服务器;
[0040]步骤S15:该当前领导状态的中央级监控服务器判断该票数最高的中央级监控服务器的票数是否大于(n/2+l),其中,η为中央级监控服务器的数量,若是,执行步骤S6 ;若否,返回执行步骤S1,以重新投票;以及
[0041]步骤S16:该当前领导状态的中央级监控服务器将当前票数最高的中央级监控服务器设置为有效领导节点。
[0042]本实施例中,同步步骤包括以下子步骤:
[0043]步骤S31:各中央级监控服务器向有效领导状态的中央级监控服务器发送
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1