为了账号安全,请及时绑定邮箱和手机立即绑定

Golang 实现一致性哈希负载均衡

如果❤️我的文章有帮助,欢迎点赞、关注。这是对我继续技术创作最大的鼓励。[更多系列文章在我博客] coderdao.github.io/

Golang 实现一致性哈希负载均衡

哈希负载均衡

个人理解:一致性哈希算法

  • 根据每一台服务器不同的 ip:port 根据自己的key生成算法,生成一个唯一的 key 值
  • key => ip:port 把机器唯一的 key 映射机器访问地址 ip:port 设置到一个有序的循环圆
  • 请求过来的时候,根据请求内容生成按 自己的key生成算法 也生成一个 请求的key
  • 请求的key有序的循环圆 上 机器的 key 循环对比,第一个 机器的 key 大于 请求的key 就是最优解,由它来处理该请求
  • 如果 请求的key有序的循环圆 上 机器的 key 都大,那么由 圆上第一条机器处理
  • 有序的循环圆 上机器,根据访问情况。近实时增删机器映射

一致性哈希负载均衡 具体编码实现

图片描述

负载轮询测试代码

图片描述

测试结果

图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消