面试问题redis有哪些集群方案

  1. Twemproxy – Twitter
  2. Codis – 豌豆荚
  3. Redis Cluster – 官方

Twemproxy:

QQ图片20170503171412.png

    多个同构twemproxy(配置相同)同时工作,
    接受客户端的请求,根据hash算法,转发给对应的redis。

优点:
- 开发简单,对应用几乎透明
- 历史悠久,方案成熟

缺点:
- 代理影响性能
- lvs和twemproxy会有节点性能瓶颈
- redis扩容非常麻烦
- twitter内部已放弃使用该方案,新使用的架构未开源


Codis:

QQ图片20170503171428.png

ZooKeeper:
    存放路由表和代理节点元数据
    分发Codis-Config的命令
Codis-Config :
    集成管理工具,有web界面
Codis-Proxy :
    无状态代理,兼容Redis协议
    对业务透明
Codis-Redis:
    基于2.8版本,二次开发
    加入slot支持和迁移命令

优点:
- 开发简单,对应用几乎透明
- 性能比Twemproxy好
- 有图形化界面,扩容容易,运维方便

缺点:
- 代理依旧影响性能
- 组件过多,需要很多机器资源
- 修改了redis代码,导致和官方无法同步,新特性跟进缓慢
- 开发团队准备主推基于redis改造的reborndb


Redis Cluster:

QQ图片20170503171554.png

P2P模式,无中心化
把key分成16384个slot
每个实例负责一部分slot
客户端请求若不在连接的实例,该实例会转发给对应的实例。
通过Gossip协议同步节点信息

优点:
- 组件all-in-box,部署简单,节约机器资源
- 性能比proxy模式好
- 自动故障转移、Slot迁移中数据可用
- 官方原生集群方案,更新与支持有保障

缺点:
- 架构比较新,最佳实践较少
- 多键操作支持有限(驱动可以曲线救国)
- 为了性能提升,客户端需要缓存路由表信息
- 节点发现、reshard操作不够自动化

 
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值