一种自动负载均衡分配方法及系统技术方案

技术编号:37503566 阅读:20 留言:0更新日期:2023-05-07 09:39
本公开公开的一种自动负载均衡分配方法及系统,分发服务器在调用服务器上注册zookeeper,以对调用服务器的节点进行监听;调用服务器在zookeeper注册并保存或更新调用服务器信息;zookeeper向分发服务器推送调用服务器信息;分发服务器更新本地保存的调用服务器信息并设置hash slot数据结构;数据请求端向分发服务器发送地址获取请求;分发服务器通过slot查询与地址获取请求对应的调用服务器地址,并反馈至数据请求端,数据请求端基于反馈的调用服务器地址对对应的调用服务器进行数据调用。本公开实现了负载均衡的全自动,解决了hash slot需要手动分配的问题,针对分布式节点添加与删除的场景可以自动做到高效的hash槽位迁移,将普通hash算法分片时出现的数据迁移的影响减少到最少。据迁移的影响减少到最少。据迁移的影响减少到最少。

【技术实现步骤摘要】
一种自动负载均衡分配方法及系统


[0001]本公开涉及电子
,尤其涉及一种自动负载均衡分配方法及系统。

技术介绍

[0002]目前针对分布式环境下的数据散列算法主要有两种:1.一致性hash算法;2.hash slot算法。
[0003]hash slot算法常见于redis中的集群扩缩容。redis中的hash slot实现方法如下:在redis集群环境下,数据是分片存储的,因此在启动的时候可指定该redis节点分配的hash槽值。假设hash槽值为0

1000,那么redis客户端进行操作时,首先对需要操作的key进行CRC16(将key首先转换为int),然后对其进行取模,计算到所处的槽位,然后将请求转发到对应的redis节点,这样就完成了数据的分片存储与管理。redis如果需要缩容或者扩容,可以手动进行分hash槽,例如:redis

1分配{0

7000},redis

2分配{7001

16383},如果需要加入redis<本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种自动负载均衡分配方法,其特征在于,应用于自动负载均衡分配系统,所述自动负载均衡分配系统包括:分发服务器、调用服务器、zookeeper和数据请求端;所述方法包括:所述分发服务器在所述调用服务器上注册所述zookeeper,以对所述调用服务器的节点进行监听;所述调用服务器在所述zookeeper保存或更新调用服务器信息;当有调用服务器信息保存或更新时,所述zookeeper向所述服务器推送所述调用服务器信息;所述分发服务器基于接收的所述调用服务器信息更新本地保存的调用服务器信息;所述分发服务器基于本地保存的调用服务器信息设置hash slot数据结构;数据请求端向所述分发服务器发送地址获取请求;所述分发服务器通过slot查询与地址获取请求对应的调用服务器地址,并反馈至所述数据请求端;所述数据请求端基于反馈的调用服务器地址对对应的调用服务器进行数据调用。2.如权利要求1所述的方法,其特征在于,所述调用服务器信息包括调用服务器的IP地址、表征调用服务器可以承载的请求数量的权重及调用服务器的地理分布信息。3.如权利要求2所述的方法,其特征在于,所述表征调用服务器可以承载的请求数量的权重由分发服务器CPU核数、分发服务器内存、分发服务器网络带宽、分发服务器空闲内存、分发服务器空闲CPU负载和分发服务器CPU总核数确定。4.根据权利要求3所述的方法,其特征在于,所述表征调用服务器可以承载的请求数量的权重基于公式权重=分发服务器CPU核数*0.5+分发服务器内存*0.2+分发服务器网络带宽/100*0.5+分发服务器空闲内存*0.5+分发服务器空闲CPU负载*分发服务器CPU总核数计算得到。5.如权利要求1所述的方法,其特征在于,所述分发服务器基于本地保存的调用服务器信息设置hash slot数据结构包括:所述分发服务器对比接收的调用服务器信息与本地保存的调用服务器信息,确定变化场景;所述分发服务器基...

【专利技术属性】
技术研发人员:蔺瑶南
申请(专利权)人:海尔智家股份有限公司
类型:发明
国别省市:

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

1