当前位置: 首页 > news >正文

【赵渝强老师】Memcached的路由算法

在这里插入图片描述

Memcached支持两种不同方式的客户端路由算法,即:求余数Hash算法和一致性Hash算法。下面分别进行介绍。

一、 求余数的路由算法

求余数Hash算法的客户端路由是对插入数据的键进行求余数,根据余数来决定存储到哪个Memcached实例。

视频讲解如下

【赵渝强老师】Memcached基于求余数的路由算法

例如:Memcached服务器端有三台MemCached实例。那么客户端进行路由时会根据键值对3进行求余数的操作。下面的示例中的键分别为:7、6、5.

7%3=1,那么数据值路由到第2台Memcached实例。
6%3=0,那么数据值路由到第1台Memcached实例。
5%3=2,那么数据值路由到第3台Memcached实例。

提示:求余数Hash算法的客户端路由的优点在于,能够使数据均匀地分布在每个Memcached实例上。但是它也存在很大的缺点,就是当进行扩容缩容操作时,或者某个Memcached实例出现宕机的情况。该算法会出现严重的数据丢失。

下面通过一个简单的示例来说明求余数Hash算法的数据是如何丢失的。

扩容前有3个Memcached实例:7%3=1,6%3=0,5%3=2,......
扩容后有4个Memcached实例:7%4=3,6%4=2,5%4=1,......

当有3个Memcached实例时,7号键存储在第2台Memcached实例上,而扩容后变成了存储在4台Memcached实例上,其他的键以此类推。这就导致了存取的目标位置不一样,从而造成数据的丢失。

《Redis架构原理与高性能实战》

二、 一致性Hash算法

为了解决求余数Hash算法的数据丢失问题,Memcached又提出了一致性Hash算法的客户端路由。通过使用该算法能够将丢失的数据减小到最小,但不能完全解决宕机造成的数据丢失的问题。

视频讲解如下

【赵渝强老师】Memcached基于一致性Hash的路由算法

下图展示了一致性Hash算法基本原理。
在这里插入图片描述

在初始的状态下有三个Memcached服务器实例,分别是:node1、node2和node3。其中:node1将保存键从1333之间的数据值;node2将保存键从333666之间的数据值;node3将保存键从667~1000之间的数据值。

一致性Hash路由算法的扩容和缩容视频讲解如下

【赵渝强老师】Memcached一致性Hash路由算法的扩容和缩容

下图进一步说明当Memcached集群发生扩容时数据存储位置的变化。
在这里插入图片描述

当Memcached集群发生故障出现宕机时,一致性Hash算法能够将丢失的数据减小到最小。如下图所示。当node3节点出现故障而宕机时,只会影响键从667~1000这部分的数据值。而存储在node1和node2上的数据将不会有任何的变化。换句话说,node3的宕机只影响了三分之一的数据。
在这里插入图片描述
《Redis架构原理与高性能实战》

相关文章:

  • Serverless技术深度整合:从冷启动优化到边缘场景落地
  • 锂电池SOC估计EKF仿真模型
  • 人工智能赋能产业升级:AI在智能制造、智慧城市等领域的应用实践
  • 原型链的详细解释及使用场景
  • C++23 新特性:使某些视图的多参数构造函数显式化(P2711R1)
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | 页面布局 与 Vue Router 路由配置
  • linux下编写shell脚本一键编译源码
  • LG P9844 [ICPC 2021 Nanjing R] Paimon Segment Tree Solution
  • java集合相关的api-总结
  • ElasticSearch-集群
  • 如何用mockito+junit测试代码
  • 图像定制大一统?字节提出DreamO,支持人物生成、 ID保持、虚拟试穿、风格迁移等多项任务,有效解决多泛化性冲突。
  • 【网络】Wireshark练习3 analyse DNS||ICMP and response message
  • LLM笔记(八)Transformer学习
  • Java八股文——Java基础篇
  • GBS 8.0服装裁剪计划软件在线试用
  • mac下载mysql
  • 选择之困:如何挑选合适的 Python 环境与工具——以 Google Colaboratory 为例
  • Mlp-Mixer-BiGRU故障诊断的python代码合集
  • 2025抓包工具Reqable手机抓包HTTPS亲测简单好用-快速跑通
  • 半数以上中国人都缺这几种营养,吃什么能补回来?
  • 国家统计局:1-4月份,全国固定资产投资同比增长4.0%
  • 新华社千笔楼:地方文旅宣传应走出“魔性尬舞”的流量焦虑
  • 因救心梗同学缺席职教高考的姜昭鹏顺利完成补考
  • 浙江理工大学传播系原系主任刘曦逝世,年仅44岁
  • 广药集团原董事长李楚源被“双开”:去年8月被查,曾多次发表争议言论