Redis集群~StackExchange.redis连接Twemproxy代理服务器

回到目录

本文是Redis集群系列的一篇文章,主要介绍使用StackExchange.Redis进行Twemproxy(文中简称TW)代理服务的连接过程,事务上,对于TW来说,我们需要理解一下它的物理架构,它类似于Nugix,主要实现的是请求转发,但它还有一个重要的功能,那就是自动分片,这对于大数据是很必要的,你的服务器需要横向扩展时,不需要告诉客户端,这是一种很理解化的设计模式,当然,也对于Redis来说,在配置TW之后,是可以被全美支持的!

  1. 关于tw和Redis集群的设计图
  2. 关于StackExchange.Redis驱动对TW的支持
  3. 关于Redis3.0以后的Cluster集群
  4. 关于Redis的主从模式的集群
  5. 关于Redis的哨兵Sentinel

关于tw和Redis集群的设计图

关于StackExchange.Redis驱动对TW的支持

            ConfigurationOptions options = new ConfigurationOptions();
            options.Proxy = Proxy.Twemproxy;
            options.EndPoints.Add("127.0.0.1:6379");
            options.EndPoints.Add("127.0.0.1:6380");

关于Redis3.0以后的Cluster集群

主要特点:

1):节点自动发现

2):slave->master 选举,集群容错

3):Hot resharding:在线分片

4):集群管理:cluster xxx

5):基于配置(nodes-port.conf)的集群管理

6):ASK 转向/MOVED 转向机制.

架构图:

关于Redis的主从模式的集群

与早期版一样,可以通过修改conf文件,为它添加slaveof属性来实现各redis服务器之间的主从关系,主从的数据同步可以认为是实时的。

设计图:

关于Redis的哨兵Sentinel

Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务:

  • 监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。
  • 提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。
  • 自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器; 当客户端试图连接失效的主服务器时, 集群也会向客户端返回新主服务器的地址, 使得集群可以使用新主服务器代替失效服务器。

以上关于cluster,sentinel的相关详细的说明,我们会在后面的文章中依次介绍到,够请关注!

回到目录

posted @ 2016-08-23 23:07  张占岭  阅读(2636)  评论(1编辑  收藏  举报