设备接入服务器集群方法、系统、设备及存储介质技术方案

技术编号:19829043 阅读:45 留言:0更新日期:2018-12-19 17:04
本发明专利技术提供了一种设备接入服务器集群方法、系统、设备及存储介质,所述方法包括如下步骤:为集群中各个服务器分配哈希环分区,得到哈希环分区表;获取待接入设备对应的哈希值;确定待接入设备对应的服务器识别信息;查询服务器的接入信息,并返回至所述待接入设备。本发明专利技术实现了设备与接入服务器的自动分配,而无需中心节点再进行分配;当服务器出现宕机等离线事件或新增服务器时,自动更新哈希环分区与服务器的映射关系,服务器根据更新后的哈希环分区表自动断开与应转移设备之间的连接,设备可以重新查询服务器的接入信息,重新实现连接,从而形成了一个无单点故障、快速定位和自动恢复的设备接入服务器集群方案。

【技术实现步骤摘要】
设备接入服务器集群方法、系统、设备及存储介质
本专利技术涉及服务器集群
,尤其涉及一种设备接入服务器集群方法、系统、设备及存储介质。
技术介绍
在监控系统中,随着前端监控摄像头的不断扩容,前端设备接入系统受到了很大的性能压力。传统的解决方案有如下两种:(1)如图1所示,增强接入服务器的性能,使用更好的硬件服务器来完成前端设备接入;(2)如图2所示,使用层级结构来进行设备的接入,将压力分担到子节点的设备接入系统,每个前端设备固定接入到对应的设备服务器。第一种方案中,存在的缺点在于当设备量不断地增加,达到百万级别的时候,增强后的中心服务器的性能还是不足,并且随之而来的是中心服务器的性价比大幅度降低。第二种方案中,存在的缺陷在于会出现单点故障,当某个子节点的设备接入系统停止服务之后,设备不能自动连入其他的接入系统,只能从中心节点根据预订信息定位指定设备的接入服务节点,然后向设备发送相应的信息。同时中心节点也是一个大的单点故障,如果中心节点出现问题,则整套系统无法运行。现有出现了一种对第二种方案的改进方式,当设备预定的接入服务器宕机之后,设备向中心服务器申请,接入到新的服务器节点,但是这样会造成设备定位问题,当设备连接到的服务器变更之后,中心接入节点必须维护一份设备到接入服务器的动态变更信息,定位设备的时候,必须经过查找,才能与设备进行通信,增加中心接入节点的负载。同时中心接入节点需要根据各个接入服务器的负载,给未接入的设备分配接入服务器的节点,增加了业务复杂度。
技术实现思路
针对现有技术中的问题,本专利技术的目的在于提供一种设备接入服务器集群方法、系统、设备及存储介质,具有无单点故障、快速定位和自动恢复的特点。本专利技术实施例提供一种设备接入服务器集群方法,包括如下步骤:采用一致性哈希环算法,为集群中各个服务器分配哈希环分区,得到哈希环分区表,所述哈希环分区表包括各个分区的哈希值范围和对应的服务器识别信息;获取待接入设备对应的哈希值;根据所述哈希环分区表和待接入设备的哈希值确定待接入设备对应的服务器识别信息;根据服务器识别信息查询服务器的接入信息,并返回至所述待接入设备。可选地,所述获取待接入设备对应的哈希值,包括如下步骤:采用一致性哈希算法,根据待接入设备的识别信息计算待接入设备对应的哈希值。可选地,所述方法还包括如下步骤:监听所述集群中各个服务器的状态;如果所述集群中发生服务器状态变更,则将所述哈希环分区分配至当前在线的服务器,并更新哈希环分区表。可选地,如果所述集群中发生服务器状态变更,则将所述哈希环分区分配至当前在线的服务器,包括如下步骤:如果所述集群中发生服务器离线变更,则将离线的服务器所对应的哈希环分区作为待分配分区,将所述待分配分区分配给当前集群中在线的服务器;和/或,如果所述集群中发生服务器新增变更,则重新计算当前集群中各个服务器对应的哈希环分区数量,从各个服务器对应的哈希环分区中提取超过哈希环分区数量的分区作为待分配分区,将所有待分配分区分配给新增的服务器。可选地,所述为集群中各个服务器分配哈希环分区,得到哈希环分区表,包括如下步骤:集群中各个服务器将自身的识别信息和接入信息发送至etcd系统并加入选举,所述etcd系统配置为生成服务器信息列表并选举一服务器作为主节点服务器;所述主节点服务器判断所述etcd系统中是否存在哈希环分区表;如果不存在,则所述主节点服务器为各个服务器分配哈希环分区,将得到的哈希环分区表存入所述etcd系统。可选地,所述方法还包括如下步骤:所述主节点服务器监听所述etcd系统中的服务器信息列表;如果所述服务器信息列表发生变更,所述主节点服务器根据变更后的服务器信息列表,将所述哈希环分区分配至当前在线的服务器,并更新所述etcd系统中的哈希环分区表。可选地,所述方法还包括如下步骤:各个所述服务器监听所述etcd系统中的哈希环分区表;如果所述etcd系统中的哈希环分区表发生变更,则各个所述服务器读取更新的哈希环分区表;所述服务器根据更新的哈希环分区表检查本机当前接入的设备,如果存在不是本机所对应的设备,则所述服务器断开该设备的连接。可选地,所述为集群中各个服务器分配哈希环分区,包括如下步骤:获取各个服务器设定的权值;根据所述各个服务器的权值计算各个服务器对应的分区数量,权值越高的服务器对应的分区数量越大;根据各个服务器对应的分区数量,为各个服务器分配哈希环分区,各个服务器的分区数量总和等于所述哈希环的分区总数。本专利技术实施例还提供一种设备接入服务器集群系统,应用于所述的设备接入服务器集群方法,所述系统包括:哈希环分区表生成模块,用于采用一致性哈希环算法,为集群中各个服务器分配哈希环分区,得到哈希环分区表,所述哈希环分区表包括各个分区的哈希值范围和对应的服务器识别信息;服务器分配模块,用于获取待接入设备对应的哈希值,并根据所述哈希环分区表和待接入设备的哈希值确定待接入设备对应的服务器识别信息;接入信息返回模块,用于根据服务器识别信息查询服务器的接入信息,并返回至所述待接入设备。本专利技术实施例还提供一种设备接入服务器集群设备,包括:处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的设备接入服务器集群方法的步骤。本专利技术实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述的设备接入服务器集群方法的步骤。本专利技术所提供的设备接入服务器集群方法、系统、设备及存储介质具有下列优点:本专利技术通过建立哈希环分区与服务器的映射关系,根据设备的哈希值可以确定设备对应的服务器,实现了设备与接入服务器的自动分配,而无需中心节点再进行分配;当服务器出现宕机等离线事件或新增服务器时,自动更新哈希环分区与服务器的映射关系,服务器根据更新后的哈希环分区表自动断开与应转移设备之间的连接,设备可以重新查询服务器的接入信息,重新实现连接,从而形成了一个无单点故障、快速定位和自动恢复的设备接入服务器集群方案。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显。图1是现有技术中第一种设备接入服务器集群的系统结构图;图2是现有技术中第二种设备接入服务器集群的系统结构图;图3是一致性哈希环的示意图;图4是本专利技术一实施例的设备接入服务器集群方法的流程图;图5是本专利技术一实施例的设备、服务器和哈希环分区的映射关系示意图;图6是本专利技术一实施例的设备接入服务器集群系统的结构示意图;图7是本专利技术一实施例的设备接入服务器集群设备的结构示意图;图8是本专利技术一实施例的计算机存储介质的结构示意图。具体实施方式现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式;相反,提供这些实施方式使得本专利技术将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。为了解决上述技术问题,本专利技术引入了一致性哈希环来解决服务器和待接入设备的自动匹配的问题。引入一致性哈希环是为了减少服务器列表变化时,需要连接新的服务器的设备。一致性哈希环是将服务器的列表根据服务器的唯一信息(IP地址等)进行哈希本文档来自技高网...

【技术保护点】
1.一种设备接入服务器集群方法,其特征在于,包括如下步骤:采用一致性哈希环算法,为集群中各个服务器分配哈希环分区,得到哈希环分区表,所述哈希环分区表包括各个分区的哈希值范围和对应的服务器识别信息;获取待接入设备对应的哈希值;根据所述哈希环分区表和待接入设备的哈希值确定待接入设备对应的服务器识别信息;根据服务器识别信息查询服务器的接入信息,并返回至所述待接入设备。

【技术特征摘要】
1.一种设备接入服务器集群方法,其特征在于,包括如下步骤:采用一致性哈希环算法,为集群中各个服务器分配哈希环分区,得到哈希环分区表,所述哈希环分区表包括各个分区的哈希值范围和对应的服务器识别信息;获取待接入设备对应的哈希值;根据所述哈希环分区表和待接入设备的哈希值确定待接入设备对应的服务器识别信息;根据服务器识别信息查询服务器的接入信息,并返回至所述待接入设备。2.根据权利要求1所述的设备接入服务器集群方法,其特征在于,所述获取待接入设备对应的哈希值,包括如下步骤:采用一致性哈希算法,根据待接入设备的识别信息计算待接入设备对应的哈希值。3.根据权利要求1所述的设备接入服务器集群方法,其特征在于,所述方法还包括如下步骤:监听所述集群中各个服务器的状态;如果所述集群中发生服务器状态变更,则将所述哈希环分区分配至当前在线的服务器,并更新哈希环分区表。4.根据权利要求3所述的设备接入服务器集群方法,其特征在于,如果所述集群中发生服务器状态变更,则将所述哈希环分区分配至当前在线的服务器,包括如下步骤:如果所述集群中发生服务器离线变更,则将离线的服务器所对应的哈希环分区作为待分配分区,将所述待分配分区分配给当前集群中在线的服务器;和/或,如果所述集群中发生服务器新增变更,则重新计算当前集群中各个服务器对应的哈希环分区数量,从各个服务器对应的哈希环分区中提取超过哈希环分区数量的分区作为待分配分区,将所有待分配分区分配给新增的服务器。5.根据权利要求1所述的设备接入服务器集群方法,其特征在于,所述为集群中各个服务器分配哈希环分区,得到哈希环分区表,包括如下步骤:集群中各个服务器将自身的识别信息和接入信息发送至etcd系统并加入选举,所述etcd系统配置为生成服务器信息列表并选举一服务器作为主节点服务器;所述主节点服务器判断所述etcd系统中是否存在哈希环分区表;如果不存在,则所述主节点服务器为各个服务器分配哈希环分区,将得到的哈希环分区表存入所述etcd系统。6.根据权利要求5所述的设备接入服务器集群方法,其特征在于,所述方...

【专利技术属性】
技术研发人员:王晓辉刘培成赖齐陆雪忠陈卫东
申请(专利权)人:苏州科达科技股份有限公司
类型:发明
国别省市:江苏,32

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

1