首页 > 新闻资讯 > 详情

广州专业的web前端开发培训学校一览表

来源:广州千锋教育时间:2022/9/27 17:22:08

  千锋教育-IT职业教育良心品牌。千锋 HTML5 大前端课程颠覆升级:千锋全覆盖企业项目开发前端、中台、后台全流程,真实承接上下游需求,协同协作;项目交叉融合,PC端、移动端、智能终端,各平台功能实现,技能进步看得见;还原企业真实开发场景,从项目立项到部署上线全程参与,不落下每一个开发环节;高验收标准,以真实企业需求要求功能实现,项目无BUG,流畅运行;基础-专业-项目-企业-就业-职后六维全息课程覆盖职场就业与职后发展,助力学员从全栈工程师向架构师进阶,满足不同职业发展需求。

  众所周知,Redis是一款开源的数据库,它使用ANSI C语言编写、遵守BSD协议、支持网络,并且可基于内存也可持久化的日志型、Key-Value高性能。

  Redis 持久化

  (1)什么是持久化?

  持久化,即将数据持久存储,而不因断电或其他各种复杂外部环境影响数据的完整性。由于 Redis 将数据存储在内存而不是磁盘中,所以内存一旦断电,Redis 中存储的数据也随即消失,这往往是用户不期望的,所以 Redis 有持久化机制来增加数据的安全性。

  (2)Redis 如何做持久化

  Redis 目前有两种持久化方式,即 RDB 和 AOF,RDB 是通过保存某个时间点的全量数据快照实现数据的持久化,当恢复数据时,直接通过 RDB 文件中的快照,将数据恢复。如何从海量数据里找到所需?

  ①分片:按照某种规则去划分数据,分散存储在多个节点上。通过将数据分到多个 Redis 服务器上,来减轻单个 Redis 服务器的压力。

  ②一致性 Hash 算法:既然要将数据进行分片,那么通常的做法就是获取节点的 Hash 值,然后根据节点数求模。但这样的方法有明显的弊端,当 Redis 节点数需要动态增加或减少的时候,会造成大量的 Key 无法被命中。所以 Redis 中引入了一致性 Hash 算法。该算法对 2^32 取模,将 Hash 值空间组成虚拟的圆环,整个圆环按顺时针方向组织,每个节点依次为 0、1、2…2^32-1。

  之后将每个服务器进行 Hash 运算,确定服务器在这个 Hash 环上的地址,确定了服务器地址后,对数据使用同样的 Hash 算法,将数据定位到特定的 Redis 服务器上。如果定位到的地方没有 Redis 服务器实例,则继续顺时针寻找,找到的台服务器即该数据较终的服务器位置。

  ③Hash 环的数据倾斜问题

  Hash 环在服务器节点很少的时候,容易遇到服务器节点不均匀的问题,这会造成数据倾斜,数据倾斜指的是被缓存的对象大部分集中在 Redis 集群的其中一台或几台服务器上。一致性 Hash 算法运算后的数据大部分被存放在 A 节点上,而 B 节点只存放了少量的数据,久而久之 A 节点将被撑爆。针对这一问题,可以引入虚拟节点解决。简单地说,就是为每一个服务器节点计算多个 Hash,每个计算结果位置都放置一个此服务器节点,称为虚拟节点,可以在服务器 IP 或者主机名后放置一个编号实现。

优先领取试听课
新闻资讯更多新闻
版权所有:搜学搜课(wwww.soxsok com)