回到目录

Redis自主提供了集群模式,当然也只是比较简单的读写分离模式,或者叫主从模式,它在各个redis服务端自己做数据同步机制,当然就是将主服务端的信息同步到各个slave服务器上,在客户端集成的驱动中,需要指定主节点和从节点的信息,服务端根据各自的conf的文件来实现的,下面我主要说一下两大客户端驱动是实现集群的方式方法。

服务端配置

服务端各个从服务器配置如何(6789为主节点的端口,6380为自己节点的端口)

aaarticlea/png;base64,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" alt="" />

客户端配置

ServiceStack.Redis驱动

        /// <summary>
/// 创建链接池管理对象
/// </summary>
private static void CreateManager()
{
//redis写服务器集群
string[] writeServerList = ConfigManager.Config.Redis.WriteServerList.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
//redis读服务器集群
string[] readServerList = ConfigManager.Config.Redis.ReadServerList.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
RedisClientManagerConfig s = new RedisClientManagerConfig();
s.MaxWritePoolSize = ConfigManager.Config.Redis.MaxWritePoolSize;
s.MaxReadPoolSize = ConfigManager.Config.Redis.MaxReadPoolSize;
s.AutoStart = ConfigManager.Config.Redis.AutoStart;
prcm = new PooledRedisClientManager(writeServerList, readServerList, s);
}

StackExchange.Redis驱动

    /// <summary>
/// redis队列管理者,简单的队列添加内容,以及实时消费等功能,与Lind.DDD.CachingQueue不同它将会连接到本地的redis服务器 ,
/// 默认6379端口,多个连接通过逗号分割 。 其他选项在名称的后面包含了一个 “= ”。 例如
/// var conn = ConnectionMultiplexer.Connect("redis0:6380,redis1:6380,allowAdmin=true");
/// </summary>
public class RedisQueueManager
{
/// <summary>
/// redis连接对象
/// </summary>
static ConnectionMultiplexer conn = ConnectionMultiplexer.Connect(ConfigConstants.ConfigManager.Config.Redis.Host);
/// <summary>
/// 缓存数据库
/// </summary>
static IDatabase cache = conn.GetDatabase();

也可以通过ConfigurationOptions参数来进行配置

ConfigurationOptions config = new ConfigurationOptions
{
EndPoints =
{
{ "redis0", },
{ "redis1", }
},
CommandMap = CommandMap.Create(new HashSet<string>
{
"INFO", "CONFIG", "CLUSTER",
"PING", "ECHO", "CLIENT"
}, available: false),
KeepAlive = ,
DefaultVersion = new Version(, , ),
Password = "changeme"
};

当然,它上面代码也可以直接使用下面的字符串来代替,参数化比较灵活

redis0:,redis1:,keepAlive=,version=2.8.,$CLIENT=,$CLUSTER=,$CONFIG=,$ECHO=,$INFO=,$PING=

好了,对于redis自主集群模式就介绍到这里,下次我们来说说Redis Cluster这个集群,它也是大势所趋!

感谢各位的阅读!

回到目录

Redis学习笔记~conf自主集群模式的更多相关文章

  1. Redis学习笔记八:集群模式

    作者:Grey 原文地址:Redis学习笔记八:集群模式 前面提到的Redis学习笔记七:主从复制和哨兵只能解决Redis的单点压力大和单点故障问题,接下来要讲的Redis Cluster模式,主要是 ...

  2. redis 学习笔记(6)-cluster集群搭建

    上次写redis的学习笔记还是2014年,一转眼已经快2年过去了,在段时间里,redis最大的变化之一就是cluster功能的正式发布,以前要搞redis集群,得借助一致性hash来自己搞shardi ...

  3. ZooKeeper学习笔记一:集群搭建

    作者:Grey 原文地址:ZooKeeper学习笔记一:集群搭建 说明 单机版的zk安装和运行参考:https://zookeeper.apache.org/doc/r3.6.3/zookeeperS ...

  4. 关于redis主从|哨兵|集群模式

    关于redis主从.哨兵.集群的介绍网上很多,这里就不赘述了. 一.主从 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会损失(或少量损失)数据,因为持久化会把内存中数据保存到硬盘上,重 ...

  5. redis主从|哨兵|集群模式

    关于redis主从.哨兵.集群的介绍网上很多,这里就不赘述了. 一.主从 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会损失(或少量损失)数据,因为持久化会把内存中数据保存到硬盘上,重 ...

  6. [redis读书笔记] 第二部分 集群

    1. 一个集群会包含多个节点(一个节点就是一个reid是服务器),CLUST MEET <ip><port>可以添加一个node到集群,命令执行后,两个node之间就会进行握手 ...

  7. Hadoop学习笔记—13.分布式集群中节点的动态添加与下架

    开篇:在本笔记系列的第一篇中,我们介绍了如何搭建伪分布与分布模式的Hadoop集群.现在,我们来了解一下在一个Hadoop分布式集群中,如何动态(不关机且正在运行的情况下)地添加一个Hadoop节点与 ...

  8. K8S学习笔记之CentOS7集群使用Chrony实现时间同步

    0x00 概述 容器集群对时间同步要求高,实际使用环境中必须确保集群中所有系统时间保持一致,openstack官方也推荐使用chrony代替ntp做时间同步. Chrony是一个开源的自由软件,像Ce ...

  9. 吴裕雄--天生自然HADOOP学习笔记:hadoop集群实现PageRank算法实验报告

    实验课程名称:大数据处理技术 实验项目名称:hadoop集群实现PageRank算法 实验类型:综合性 实验日期:2018年 6 月4日-6月14日 学生姓名 吴裕雄 学号 15210120331 班 ...

随机推荐

  1. 在VM虚拟机上安装Microsoft Dynamics CRM 2016 步骤图解及安装注意事项

    安装Dynamics CRM 2016环境配置要求: 系统版本:Windows Server 2012 R2(必须) SQL 版本: SQLServer2014SP1-FullSlipstream-x ...

  2. iOS用三种途径实现一方法有多个返回值

    以前觉得这种标题有点偏向于理论,实际开发中怎么会有这种诡异的需求,但是真正遇到了这种硬需求时觉得还是有那么点价值的,理论付诸了实践在此也就做了个整理. 以我私下开发中的一处代码为例,本意是希望有这么一 ...

  3. 基本动画CABasicAnimation - 完成之后闪回初始状态

    基本动画CABasicAnimation 结束之后,默认闪回初始状态,那怎么解决呢? position需要设备两个属性: // MARK: - 结束后不要闪回去 anim.removedOnCompl ...

  4. IOS开发之Bug--使用xib的自动布局和代码中修改遇到的bug

    首先,在xib中约束了宽高22,但是需要代码动态重设,所以一开始如下设置,但是实际显示的仍然是22,而不是重设的值: 然后直接拿xib的将布局约束对象拖线重新通过代码重设约束值,虽然打印的结果宽高值是 ...

  5. Maven之 聚合与继承 详解

    说到聚合与继承我们都很熟悉,maven同样也具备这样的设计原则,下面我们来看一下Maven的pom如何进行聚合与继承的配置实现. 一.为什么要聚合? 随着技术的飞速发展和各类用户对软件的要求越来越高, ...

  6. 思考:用开发移动app的观念来开发网站

    首先祝大家新年快乐.万事如意. 开发网站程序也有一些年头了,从最初的静态HTML+ JS,到后来的WebForm,然后过渡到现在的MVC. 由于最近做一些技术调研,也接触了很多移动开发,iOS和And ...

  7. ORACLE表空间管理维护

    1:表空间概念 在ORACLE数据库中,所有数据从逻辑结构上看都是存放在表空间当中,当然表空间下还有段.区.块等逻辑结构.从物理结构上看是放在数据文件中.一个表空间可由多个数据文件组成. 如下图所示, ...

  8. SSRS 2008 R2 错误:Timeout expired. The timeout period

    今天遇到了Reporting Services(SQL SERVER 2008 R2)的报表执行异常情况,报表加载数据很长时间都没有响应,最后报"An error occurred with ...

  9. WebForm(四)——Repeater控件(重要、好用)

    Repeater控件,可以用来一次显示一组数据项.比如,可以用它们显示一个数据表中的所有行.             Repeater控件完全由模板驱动,提供了最大的灵活性,可以任意设置它的输出格式. ...

  10. 微软CodeDom模型学习笔记(全)

    CodeDomProvider MSDN描述 CodeDomProvider可用于创建和检索代码生成器和代码编译器的实例.代码生成器可用于以特定的语言生成代码,而代码编译器可用于将代码编译为程序集. ...