redis集群之Codis( 六 )
Codis 的优点
Codis 在设计上相比 Redis Cluster 官方集群方案要简单很多 , 因为它将分布式的问题交给了第三方 zk/etcd 去负责 , 自己就省去了复杂的分布式一致性代码的编写维护工作 。 而Redis Cluster 的内部实现非常复杂 , 它为了实现去中心化 , 混合使用了复杂的 Raft 和Gossip 协议 , 还有大量的需要调优的配置参数 , 当集群出现故障时 , 维护人员往往不知道从何处着手 。
MGET 指令的操作过程
mget 指令用于批量获取多个 key 的值 , 这些 key 可能会分布在多个 Redis 实例中 。 Codis 的策略是将 key 按照所分配的实例打散分组 , 然后依次对每个实例调用 mget 方法 , 最后将结果汇总为一个 , 再返回给客户端 。 架构变迁Codis 作为非官方 Redis 集群方案 , 近几年来它的结构一直在不断变化 , 一方面当官方的 Redis 有变化的时候它要实时去跟进 , 另一方面它作为 Redis Cluster 的竞争方案之一 , 它还得持续提高自己的竞争力 , 给自己增加更多的官方集群所没有的便捷功能 。 比如 Codis 有个特色的地方在于强大的 Dashboard 功能 , 能够便捷地对 Redis 集群进行管理 。 这是 Redis 官方所欠缺的 。 另外 Codis 还开发了一个 Codis-fe(federation 联邦) 工具 , 可以同时对多个 Codis 集群进行管理 。 在大型企业 , Codis 集群往往会有几十个 , 有这样一个便捷的联邦工具可以降低不少运维成本 。
推荐阅读
- 腾讯云数据库Redis鼎立支持:腾讯会议完成300人在线会议
- 蚂蚁花呗五面(高级):分布式+MySQL+HashMap+线程池+MQ+Redis
- Java Redis 你了解多少?
- 腾讯云数据库Redis助力百万企业远程办公
- 2020年大厂面试开发者需知:redis有什么用?
- Redis缓存知识问题
- BAT一线互联网常考面试题:Spring+并发编程+JVM+设计模式+Redis
- 读懂这一篇,集群节点不下线
- 在大数据开发里Zookeeper有什么用?多台服务器集群的安装与配置
- 粉丝福利!不要小看redis,任何一家公司的招聘信息都包含一段redis的需求!