加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

这可能是目前最全的Redis高可用技术解决方案总结

发布时间:2018-09-16 09:29:46 所属栏目:编程 来源:张冬洪
导读:技能沙龙 | 邀您于8月25日与国美/AWS/转转三位专家配合切磋小措施电商拭魅战 本文首要针对Redis常见的几种行使方法及其优弱点睁开说明。 一、常见行使方法 Redis的几种常见行使方法包罗: Redis单副本; Redis多副本(主从); Redis Sentinel(哨兵); Redi

Redis Cluster回收假造槽分区,全部的键按照哈希函数映射到0~16383个整数槽内,每个节点认真维护一部门槽以及槽所印映射的键值数据。

这也许是今朝最全的Redis高可用技能办理方案总结

利益:

  • 无中心架构;
  • 数据凭证slot存储漫衍在多个节点,节点间数据共享,可动态调解数据漫衍;
  • 可扩展性:可线性扩展到1000多个节点,节点可动态添加或删除;
  • 高可用性:部门节点不行用时,集群仍可用。通过增进Slave做standby数据副本,可以或许实现妨碍自动failover,节点之间通过gossip协议互换状态信息,用投票机制完成Slave到Master的脚色晋升;
  • 低落运维本钱,进步体系的扩展性和可用性。

弱点:

  • Client实现伟大,驱动要求实现Smart Client,缓存slots mapping信息并实时更新,进步了开举事度,客户端的不成熟影响营业的不变性。今朝仅JedisCluster相对成熟,非常处理赏罚部门还不完美,好比常见的“max redirect exception”。
  • 节点会由于某些缘故起因产生阻塞(阻塞时刻大于clutser-node-timeout),被判定下线,这种failover是没有须要的。
  • 数据通过异步复制,不担保数据的强同等性。
  • 多个营业行使统一套集群时,无法按照统计区分冷热数据,资源断绝性较差,轻易呈现彼此影响的环境。
  • Slave在集群中充当“冷备”,不能缓解读压力,虽然可以通过SDK的公道计划来进步Slave资源的操作率。
  • Key批量操纵限定,如行使mset、mget今朝只支持具有沟通slot值的Key执行批量操纵。对付映射为差异slot值的Key因为Keys不支持跨slot查询,以是执行mset、mget、sunion等操纵支持不友爱。
  • Key事宜操纵支持有限,只支持多key在统一节点上的事宜操纵,当多个Key漫衍于差异的节点上时无法行使事宜成果。
  • Key作为数据分区的最小粒度,不能将一个很大的键值工具如hash、list等映射到差异的节点。
  • 不支持大都据库空间,单机下的redis可以支持到16个数据库,集群模式下只能行使1个数据库空间,即db 0。
  • 复制布局只支持一层,从节点只能复制主节点,不支持嵌套树状复制布局。
  • 停止发生hot-key,导致主库节点成为体系的短板。
  • 停止发生big-key,导致网卡撑爆、慢查询等。
  • 重试时刻应该大于cluster-node-time时刻。
  • Redis Cluster不提议行使pipeline和multi-keys操纵,镌汰max redirect发生的场景。

5、Redis自研

Redis自研的高可用办理方案,首要表此刻设置中心、妨碍探测和failover的处理赏罚机制上,凡是必要按照企业营业的现实线上情形来定制化。

这也许是今朝最全的Redis高可用技能办理方案总结

这也许是今朝最全的Redis高可用技能办理方案总结

利益:

  • 高靠得住性、高可用性;
  • 自主可控性高;
  • 贴切营业现实需求,可缩性好,兼容性好。

弱点:

  • 实现伟大,开拓本钱高;
  • 必要成立配套的周边办法,如监控,域名处事,存储元数据信息的数据库等;
  • 维护本钱高。 

【编辑保举】

  1. 口试中有哪些经典的数据库题目?
  2. 从分库分表后遗症,总结数据库表拆分计策
  3. Redis详解以及Redis的应用场景
  4. 阿里数据库备份专家:教你pick最有用的备份体系
  5. 奇妙计划多级缓存,为数据库减负
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读