微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Redis Cluster模式与Proxy模式比较

 

转自 https://www.iteye.com/blog/ballenlee-2514207

1. cluster模式

优点:

  1. 客户端(Jedis)直连redis节点,性能会更好

缺点:

    1. 客户端(Jedis)直连redis节点,意味着客户端就需要保存集群所有节点信息,当集群比较大100-200个master节点时,这个数据量会比较大

    2. 当集群规模比较大,100-200个master节点时,算上从节点,要到200-400个节点,互相ping pong的健康检查网络开销会非常大

 

2. proxy模式

优点:

    1. 客户端(Jedis)直连有限的proxy节点,会比较轻量和简单

    2. 集群规模理论上可以非常大,因为proxy对外隐藏了集群规模

缺点:

    1. 多了一层proxy访问,性能会有影响

    2. 需要第三方的proxy实现,集群水平扩容时proxy要想平滑动态更新集群配置,需要开发工具支持

 

3. 方案

    1. 采用 twemproxy做为代理,去zk获取集群配置

    2. 集群通过sentinel保证高可用

 

4. 水平扩容

    1. 开发工具,伪装成集群的slave节点,从而拿到RDB文件和增量更新数据,路由到新的集群(此处的路由算法要保证和twemproxy实际实现的一致)

    2. 当开发工具评估两个集群基本一致(实时更新数据较小、偏移量追平等因素综合考虑),更新新的集群配置到zk

    3. zk会动态通知twemproxy,由于twemproxy的路由算法跟4.1步骤相同,基本就可以保证平滑迁移

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐