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

中国网站建设总部在哪里鞍山互动网

中国网站建设总部在哪里,鞍山互动网,福州网站seo,温州公司网站开发目录 一、什么是一致性哈希 二、一致性哈希原理 2.1 hash 环 三、服务器扩容场景 3.1 服务器增加 3.2 服务器减少 3.3 使用虚拟节点 四、 一致性哈希的使用场景 一、什么是一致性哈希 一致性哈希是一种哈希算法,用于将数据分布到不同的节点或存储区域&…

目录

一、什么是一致性哈希

二、一致性哈希原理

2.1 hash 环

三、服务器扩容场景 

3.1 服务器增加

3.2 服务器减少

3.3 使用虚拟节点

四、 一致性哈希的使用场景 


一、什么是一致性哈希

一致性哈希是一种哈希算法,用于将数据分布到不同的节点或存储区域,而保持数据的一致性和均衡性。在分布式系统中,一致性哈希通常用于解决负载均衡和数据分布的问题。

一致性哈希的基本原理是将数据的键通过哈希函数映射到一个固定的哈希空间中。然后,将这个哈希空间分布到环形的哈希环上。每个节点或存储区域在哈希环上占据一个位置,称为虚拟节点或者物理节点。

当需要存储或查找数据时,通过哈希函数计算数据的哈希值,并沿着哈希环顺时针寻找距离最近的节点。这样可以实现数据的高效分布和查找,同时也能够避免节点动态增减时数据重新分布的开销。

一致性哈希算法的优势在于其简单、高效,并且能够保持数据的均衡性和一致性。在分布式存储系统、负载均衡器等场景中被广泛应用。

一致性哈希算法的优点在于:当新增或删除节点时,只会影响到环上的一小部分节点,因此不会像传统的哈希算法那样造成大量的数据迁移和重新分片。同时,由于节点数较多,请求可以被更好地平均分配,从而实现了负载均衡的效果。

另外,一致性哈希算法还可以通过增加虚拟节点来解决节点不均衡的问题,从而进一步提高负载均衡的效果。

例如:有三台服务器编号node1,node2,node3;有3000万个key,需要将这3000万个key均匀的缓存到三台机器上。

解决方案:取模算法 hash(key)% N,即:对 key 进行 hash 运算后取模,N 是机器的数量;

这样对 key 进行 hash 后的结果对 3 取模,得到的结果一定是 0、1 或 2,正好对应服务器node0node1node2,存取数据直接找对应的服务器即可。

取模算法虽然使用简单,而服务器数量 N 发生变化后 hash(key)% N计算的结果也会随之变化!

二、一致性哈希原理

一致性哈希算法也是取模算法,与上面的对服务器取模不同的是它是对 2^32 取模。

即:key % (2^32)

2.1 hash 环

这时,通过计算 key%(2^32),看它落到了圆上的哪一点,然后顺时针向后走,遇到的第一台服务器就是它存放的服务器。

A->B弧线上的点都对应->B服务器
B->C弧线上的点都对应->C服务器
C->A弧线上的点都对应 ->A服务器

三、服务器扩容场景 

3.1 服务器增加

受到影响的数据范围只有 A到D 这条弧线上的数据

3.2 服务器减少

受到影响的数据范围只有A->B 

3.3 使用虚拟节点

实际应用中,服务器绑定的点可能长这个样子:

这样的话容易出现数据偏斜:A服务器承担压力太大,B和C服务器性能浪费了。

这时候就要用到虚拟节点技术:我们就给A服务器,设置三个虚拟的分身,B/C也一样
A->A1 A2 A3
B->B1 B2 B3
C->C1 C2 C3

 

这里只有ABC三台服务器是真正存在的,所以数据如果顺时针遇到的是A的分身服务器,则直接存储到A上。
同理,B的分身,存储到B服务器上
同理,C的分身,存储到C服务器上

四、 一致性哈希的使用场景 

一致性哈希是一种在分布式系统中常用的技术,其使用场景包括但不限于以下几个方面:

  1. 负载均衡:一致性哈希可以用于负载均衡,将请求均匀地分布到多个服务器上,避免出现某些服务器负载过重的情况。

  2. 缓存分布:在分布式缓存系统中,一致性哈希可以用来确定将数据存储在哪个节点上,从而提高缓存命中率和整体性能。

  3. 分布式存储:一致性哈希可用于分布式存储系统中,确定数据存储在哪个节点上,提高数据的访问速度和可靠性。

  4. 容错性:当系统中的节点出现故障或新增节点时,一致性哈希可以帮助系统快速地重新分配数据,提高系统的容错性和可扩展性。

  5. P2P 网络:在对等网络(P2P)中,一致性哈希可以帮助节点发现其他节点的位置并快速建立连接。

总的来说,一致性哈希在分布式系统中起到了路由和数据分布的作用,能够提高系统的性能和可靠性。

http://www.dtcms.com/wzjs/548265.html

相关文章:

  • 专门做焦点图的网站美篇相册制作免费下载app
  • 贷款公司如何做网站中信建设有限责任公司是上市公司吗
  • 大港油田建设网站企业综合查询网站
  • 网站开发选题申请理由网络广告营销实现方式解读
  • 西安火车站建设搜索排行榜
  • 信息网站方案怎么玩互联网能赚钱
  • 做网站改版的wordpress+主题页脚
  • 赣州网站建设费用网站后台建设费用
  • 怎么建立公司网站平台昆明 做网站 vr
  • 电脑网站安全证书有问题如何解决网络游戏的利弊
  • 成都网站建设优化推广州安全教育平台app下载
  • tor网站建设网站侧边栏模板
  • 如何看一个关键词在某个网站是否被百度收录聚财洋气三个字公司名字
  • 给别人做网站能赚钱吗公司网站制作门槛
  • 无锡seo网站推广费用传统企业网站建设
  • 建设网站花费网站建设 费用 入哪个科目
  • 网站建设叁金手指花总7html5网站开发实例教程
  • 企业网站建设找外包公司做做网站要多少钱 知乎
  • 上海培训网站建设苏州网站建设公司鹅鹅鹅
  • 男女明星直接做的视频网站国家建设厅网站
  • 上海网站制作开发公司网站备案信息注销原因
  • 网站修改域名服务器官方网站如何做
  • 免费的免抠图素材网站个人养老保险怎么买最划算
  • 网站开发所需开发环境网站模板之家官网
  • 网站建设费入如保入账静态网站什么样
  • 外贸专业网站盐山网站制作
  • 婚庆网站建设论文企业网站开发价钱低
  • 阜阳市重点工程建设局网站社交网站开发技术岗
  • 搭建一个商城类网站常德网站优化哪家好
  • 深圳网站制作网络建设公司阿里邮箱企业版入口