一致性 Hash 超通俗讲解
一、普通哈希分配 KV 有什么致命问题假设我们有 3 台服务器用来存大量 KV 数据节点 A、节点 B、节点 C 常规分配规则公式节点下标 hash(Key) % 总机器数 N举例 N3某个 Key 算出来哈希取模是 0 → 存 A模 1 存 B模 2 存 C。痛点增减一台机器几乎所有数据都要搬家如果再加一台节点 D总机器数 N4 原来所有 Key 取模结果全部变了绝大多数 Key 匹配的服务器全部错乱需要大规模迁移数据系统卡顿、压力巨大。 一致性 Hash 就是专门解决扩容 / 缩容时数据迁移量太大的算法。二、一致性 Hash 核心结构哈希环设定一个固定哈希取值范围0 ~ 2³²−1把首尾连起来形成一个环形哈希空间。第一步把所有真实服务器节点各自算出哈希值摆到圆环对应的位置上。存放 / 查询某个 Key 的规则 ① 计算这个 Key 的哈希值定位到环上一个点 ② 沿着圆环顺时针往前走遇到的第一个服务器节点就是这个 Key 的存放节点。简单举例环上顺时针排布节点A → B → CKey 哈希落在 A~B 区间顺时针找到 B数据存在 BKey 哈希落在 B~C 区间顺时针找到 C数据存在 CKey 哈希落在 C~A 区间顺时针找到 A数据存在 A三、增减节点优势核心优点1、新增节点只影响新增节点逆时针相邻区间里的一部分 Key只有这一小部分数据需要迁移绝大部分 KV 数据不用动。2、某个节点宕机下线下线节点对应的所有 Key会顺延顺时针找下一个节点承接同样只有局部数据迁移不会全局洗牌。对比普通取模哈希普通哈希改总数 全量数据搬迁一致性哈希只有少量数据搬迁。四、一致性 Hash 天生缺陷数据倾斜如果节点在哈希环上分布不均匀有的节点占据圆环很大一段区间存海量数据有的节点区间很小数据很少负载严重不均衡。解决方案虚拟节点给每一台真实物理节点虚拟出成百上千个虚拟节点计算哈希打散均匀散布在整个环上。 寻址逻辑不变Key 找到虚拟节点后再映射回对应的真实机器。 好处数据在多台机器分布更均匀负载均衡某台机器下线数据会分摊给多个后继节点不会瞬间压垮单台服务器。极简总结一致性 Hash 构建 0~2³² 环形哈希空间节点与 Key 映射到环上Key 顺时针匹配首个节点完成存储分配增减节点仅少量数据迁移解决普通哈希扩容大规模数据搬迁问题引入虚拟节点解决数据倾斜、节点负载不均问题作用是 KV 数据分片路由和 Raft 多副本一致性属于不同层面的分布式方案

相关新闻

Hermes Agent数据库连接池终极配置指南:快速提升系统性能的5个关键步骤

Hermes Agent数据库连接池终极配置指南:快速提升系统性能的5个关键步骤

Hermes Agent数据库连接池终极配置指南:快速提升系统性能的5个关键步骤 【免费下载链接】hermes-agent The agent that grows with you 项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent 你是否正在使用Hermes Agent处理高并发AI任务时遇到响…

2026/6/24 8:58:31阅读更多 →
GitHub Actions工件管理终极指南:从基础到企业级架构设计

GitHub Actions工件管理终极指南:从基础到企业级架构设计

GitHub Actions工件管理终极指南:从基础到企业级架构设计 【免费下载链接】download-artifact 项目地址: https://gitcode.com/gh_mirrors/do/download-artifact GitHub Actions的download-artifact插件是企业级CI/CD流水线中不可或缺的工件管理工具。作为G…

2026/6/24 8:58:31阅读更多 →
【OpenClaw】通过Nanobot源码学习架构---(3)

【OpenClaw】通过Nanobot源码学习架构---(3)

0x00 概要OpenClaw 应该有40万行代码,阅读理解起来难度过大,因此,本系列通过Nanobot来学习 OpenClaw 的特色。Nanobot是由香港大学数据科学实验室(HKUDS)开源的超轻量级个人 AI 助手框架,定位为"Ultra-Lightweight OpenClaw&…

2026/6/24 8:53:31阅读更多 →
近期量化学习别只学代码,交易认知也要同步补

近期量化学习别只学代码,交易认知也要同步补

手工交易转向量化表达时,单独补技术并不能解决全部问题。程序需要清楚的规则,而规则也需要能进入程序的表达方式。因此学习路径不能只偏向交易认知,也不能只偏向技术实现,而要让两者互相支撑。让 AI 先帮你把问题问清楚交易认知决…

2026/6/25 16:04:42阅读更多 →
Havenlon 对抗性完整(一):不是谁可信,而是谁可能变坏

Havenlon 对抗性完整(一):不是谁可信,而是谁可能变坏

在讨论 Havenlon 的执行控制架构时,我越来越意识到,仅仅解释“系统如何正常工作”是不够的。一个系统在正常条件下能够运转,并不代表它在真实世界里足够可靠。真正困难的问题往往不是流程是否顺畅,而是当流程中的某一层出错、被误…

2026/6/25 16:04:42阅读更多 →
618海信百吋拿下量额双冠,用户用钱包为“真实体验”投票

618海信百吋拿下量额双冠,用户用钱包为“真实体验”投票

如果将时间倒回两年前,“百吋电视”在绝大多数消费者的认知里还是一个约等于“极客玩具”或“豪宅选配”的概念。然而到了2026年,百吋市场的底层逻辑已发生根本转变:核心议题从“卷参数”演变为“看真实体验”。作为年中最重要的消费节点&…

2026/6/25 16:04:42阅读更多 →
ArcObjects SDK 10.8深度解析:从3D建模到地理可视化的专业级GIS开发方案

ArcObjects SDK 10.8深度解析:从3D建模到地理可视化的专业级GIS开发方案

ArcObjects SDK 10.8深度解析:从3D建模到地理可视化的专业级GIS开发方案 【免费下载链接】arcobjects-sdk-community-samples This repo contains the source code samples (.Net c#, .Net vb, and C) that demonstrate the usage of the ArcObject SDK. 项目地址…

2026/6/25 16:04:42阅读更多 →
怎样3步搭建高效个人Web邮箱系统:Roundcube实战指南

怎样3步搭建高效个人Web邮箱系统:Roundcube实战指南

怎样3步搭建高效个人Web邮箱系统:Roundcube实战指南 【免费下载链接】roundcubemail The Roundcube Webmail suite 项目地址: https://gitcode.com/gh_mirrors/ro/roundcubemail 你是否厌倦了邮箱客户端在不同设备上的体验差异?是否希望拥有一个完…

2026/6/25 16:04:42阅读更多 →
戴森V6/V7电池开源固件升级完全指南:解锁隐藏的电芯平衡功能

戴森V6/V7电池开源固件升级完全指南:解锁隐藏的电芯平衡功能

戴森V6/V7电池开源固件升级完全指南:解锁隐藏的电芯平衡功能 【免费下载链接】FU-Dyson-BMS (Unofficial) Firmware Upgrade for Dyson V6/V7 Vacuum Battery Management System 项目地址: https://gitcode.com/gh_mirrors/fu/FU-Dyson-BMS 还在为戴森吸尘器…

2026/6/25 15:59:41阅读更多 →
【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体 一文搞定到底什么是智能体【人工智能】一文搞定到底什么是智能体一. LM,WorkFlow,Agent分别有什么么不同二. Agent的思考过程是怎样的三. Agent的五个核心部分1)LLM2)Prompt3)Me…

2026/6/25 9:39:54阅读更多 →
嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

1. 嵌入式GUI控件:从原理到实战的深度解析在嵌入式系统开发中,图形用户界面(GUI)的设计与实现往往是项目从“能用”到“好用”的关键一跃。不同于资源充沛的PC或移动平台,嵌入式设备的GUI需要在有限的CPU性能、内存空间…

2026/6/25 2:52:24阅读更多 →
Google AI Studio 300美元额度的真相与实战指南

Google AI Studio 300美元额度的真相与实战指南

1. 这300美金不是“送钱”,而是Google埋下的第一道技术门槛 你看到标题里那个醒目的“$300美金”时,第一反应可能是:又一个免费额度?领完就完事?我亲手试过——这300美金根本不是红包,而是一张入场券&…

2026/6/25 9:01:34阅读更多 →
面试辅助工具横评:我试了5款AI面试工具,最后留下了OfferGo

面试辅助工具横评:我试了5款AI面试工具,最后留下了OfferGo

上半年跳槽,面了十几家公司。说句实话,不是能力不行,是面试现场太容易崩了。 明明准备了一周,面试官换个问法脑子就一片白。面完之后那个懊悔——其实我会的。 后来开始试市面上的AI面试辅助工具。前前后后装了5款,踩…

2026/6/25 11:52:11阅读更多 →
Claude Code 提示词设计:从塑造“人格”到建立“状态机”

Claude Code 提示词设计:从塑造“人格”到建立“状态机”

当前 AI Agent 设计的核心痛点在于:大模型不缺写代码的能力,缺的是克制力、边界感和验证逻辑。Prompt 不再是用来塑造“人格”的,而是用来建立“状态机(State Machine)”和“行为门禁(Guardrails&#xff0…

2026/6/25 11:52:11阅读更多 →
MC-037 | 自定义 Skill 开发:创建你的AI能力模块

MC-037 | 自定义 Skill 开发:创建你的AI能力模块

MONKEYCODE 教程系列 MonkeyCode教程及推广系列 MC-037 自定义 Skill 开发:创建你的AI能力模块 >官网链接注册更放心哦https://monkeycode-ai.com/?ic019e0aed-c823-783c-b08a-4f030f891e4e 系列: 不爱土豆唯爱马铃薯 MonkeyCode 教程系列 字数: 约 1400 字…

2026/6/25 11:52:11阅读更多 →