[coding] 用MD5均匀分摊业务流量

背景:

20W台机器,会根据下发的配置内容,执行相应的业务逻辑,然后将执行结果返回给服务器;为了避免20W台机器同时传送结果,造成网络波动,我们就必须把这些网络流量尽可能均匀地分摊到一个时间段内;

最原始的想法是,直接使用随机数;然后,昨天跟QA开会的时候,他们提到之前主机注册到etcd集群时同样遇到了一个类似的问题;最后,请教了下老大发现md5还有这种妙处;

方法:

简单来说就是,根据hostname计算MD5,然后取当中的几位,接下来其实就是跟使用随机数一样的思路了;

参考文献:

https://liam0205.me/2015/08/12/does-the-result-of-md5-hash-function-uniform/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值