一、定义
一致性哈希算法(Consistent Hashing Algorithm)于1997年由麻省理工学院的Karger等人在论文《Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web》中提出,用来解决计算机网络分布式Cache的问题。一致性就是一贯的、始终如一、稳定性之意。
2025年05月06日
一致性哈希算法(Consistent Hashing Algorithm)于1997年由麻省理工学院的Karger等人在论文《Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web》中提出,用来解决计算机网络分布式Cache的问题。一致性就是一贯的、始终如一、稳定性之意。
2025年05月06日
在 Redis 集群里面主要涉及到两种 Hash 算法 :
2025年05月06日
先说结论:不是普通Hash不行,是分布式场景下它太脆弱!
你以为取模就够了?Redis集群扩容时,数据重分布的噩梦才刚刚开始!
2025年05月06日
前几天关注蚂蚁金服sofa博客,偶然看到一篇在讲解sofaRegistry的文章,里头提到slotTable以及一致性hash算法。其实之前面试八股文也是经常会出现它的身影,今天我们深入看看它长什么样子
2025年05月06日
什么是 常规的 hash算法?
以分布式缓存为例,假设现在有3台缓存服务器(S0,S1,S2),要将一些 文件 尽可能平均地分配到不同的服务器上,hash算法的做法是:
2025年05月06日
近年来B2C、O2O等商业概念的提出和移动端的发展,使得分布式系统流行了起来。分布式系统相对于单系统,解决了流量大、系统高可用和高容错等问题。功能强大也意味着实现起来需要更多技术的支持。例如系统访问层的负载均衡,缓存层的多实例主从复制备份,数据层的分库分表等。我们以负载均衡为例,常见的负载均衡方法有很多,但是它们的优缺点也都很明显:
2025年05月06日
近段时间一直在总结分布式系统架构常见的算法。前面我们介绍过布隆过滤器算法。接下来介绍一个非常重要、也非常实用的算法:一致性哈希算法。通过介绍一致性哈希算法的原理并给出了一种实现和实际运用的案例,带大家真正理解一致性哈希算法。
2025年05月06日
以存储为例,在整个微服务系统中,我们的存储不可能说只是一个单节点。
一是为了提高稳定,单节点宕机情况下,整个存储就面临服务不可用;
二是数据容错,同样单节点数据物理损毁,而多节点情况下,节点有备份,除非互为备份的节点同时损毁。
2025年05月06日
一致性hash算法是,1097麻省理工提出的分布式hashDHT实现算法,极倔internet的热点问题
平衡性 hash结果尽可能的分布到所有的缓存中去,缓冲空间利用率最高
单调性 保持已有的缓存能映射到对应的位置,新加入的缓存能加入新的位置不会映射到旧的位置
分散性 尽量降低分散性的缓存不一致情况发生
负载 负载被粉丝降低负荷