介绍配置Redis主从服务组态的文档在. Redisson的主从模式的使用方法如下:

    MasterSlaveServersConfig 类的设置参数如下:

    dnsMonitoringInterval(DNS监控间隔,单位:毫秒)

    默认值:5000

    用来指定检查节点DNS变化的时间间隔。使用的时候应该确保JVM里的DNS数据的缓存时间保持在足够低的范围才有意义。用-1来禁用该功能。

    masterAddress(主节点地址)

    可以通过host:port的格式来指定主节点地址。

    addSlaveAddress(添加从主节点地址)

    可以通过host:port的格式来指定从节点的地址。多个节点可以一次性批量添加。

    readMode(读取操作的负载均衡模式)

    默认值: SLAVE(只在从服务节点里读取)

    注:在从服务节点里读取的数据说明已经至少有两个节点保存了该数据,确保了数据的高可用性。

    设置读取操作选择节点的模式。可用值为:SLAVE - 只在从服务节点里读取。MASTER - 只在主服务节点里读取。MASTER_SLAVE - 在主从服务节点里都可以读取。

    subscriptionMode(订阅操作的负载均衡模式)

    默认值:SLAVE(只在从服务节点里订阅)

    设置订阅操作选择节点的模式。可用值为:SLAVE - 只在从服务节点里订阅。MASTER - 只在主服务节点里订阅。

    loadBalancer(负载均衡算法类的选择)

    默认值: org.redisson.connection.balancer.RoundRobinLoadBalancer

    在使用多个Redis服务节点的环境里,可以选用以下几种负载均衡方式选择一个节点:org.redisson.connection.balancer.WeightedRoundRobinBalancer - 权重轮询调度算法 - 轮询调度算法org.redisson.connection.balancer.RandomLoadBalancer - 随机调度算法

    subscriptionConnectionMinimumIdleSize(从节点发布和订阅连接的最小空闲连接数)

    默认值:1

    多从节点的环境里,每个 从服务节点里用于发布和订阅连接的最小保持连接数(长连接)。Redisson内部经常通过发布和订阅来实现许多功能。长期保持一定数量的发布订阅连接是必须的。

    subscriptionConnectionPoolSize(从节点发布和订阅连接池大小)

    默认值:50

    多从节点的环境里,每个 从服务节点里用于发布和订阅连接的连接池最大容量。连接池的连接数量自动弹性伸缩。

    slaveConnectionMinimumIdleSize(从节点最小空闲连接数)

    默认值:32

    多从节点的环境里,每个 从服务节点里用于普通操作( 发布和订阅)的最小保持连接数(长连接)。长期保持一定数量的连接有利于提高瞬时读取反映速度。

    slaveConnectionPoolSize(从节点连接池大小)

    默认值:64

    masterConnectionMinimumIdleSize(主节点最小空闲连接数)

    默认值:32

    多从节点的环境里,每个 主节点的最小保持连接数(长连接)。长期保持一定数量的连接有利于提高瞬时写入反应速度。

    masterConnectionPoolSize(主节点连接池大小)

    默认值:64

    主节点的连接池最大容量。连接池的连接数量自动弹性伸缩。

    idleConnectionTimeout(连接空闲超时,单位:毫秒)

    默认值:10000

    如果当前连接池里的连接数量超过了最小空闲连接数,而同时有连接空闲时间超过了该数值,那么这些连接将会自动被关闭,并从连接池里去掉。时间单位是毫秒。

    connectTimeout(连接超时,单位:毫秒)

    默认值:10000

    同任何节点建立连接时的等待超时。时间单位是毫秒。

    timeout(命令等待超时,单位:毫秒)

    默认值:3000

    等待节点回复命令的时间。该时间从命令发送成功时开始计时。

    retryAttempts(命令失败重试次数)

    默认值:3

    如果尝试达到 retryAttempts(命令失败重试次数) 仍然不能将命令发送至某个指定的节点时,将抛出错误。如果尝试在此限制之内发送成功,则开始启用 timeout(命令等待超时) 计时。

    retryInterval(命令重试发送时间间隔,单位:毫秒)

    默认值:1500

    在一条命令发送失败以后,等待重试发送的时间间隔。时间单位是毫秒。

    reconnectionTimeout(重新连接时间间隔,单位:毫秒)

    默认值:3000

    当与某个节点的连接断开时,等待与其重新建立连接的时间间隔。时间单位是毫秒。

    failedAttempts(执行失败最大次数)

    默认值:3

    在某个节点执行相同或不同命令时,连续 失败 failedAttempts(执行失败最大次数) 时,该节点将被从可用节点列表里清除,直到 reconnectionTimeout(重新连接时间间隔) 超时以后再次尝试。

    database(数据库编号)

    默认值:

    尝试连接的数据库编号。

    password(密码)

    用于节点身份验证的密码。

    subscriptionsPerConnection(单个连接最大订阅数量)

    默认值:5

    每个连接的最大订阅数量。

    clientName(客户端名称)

    默认值:null

    在Redis节点里显示的客户端名称。

    sslEnableEndpointIdentification(启用SSL终端识别)

    默认值:true

    开启SSL终端识别能力。

    sslProvider(SSL实现方式)

    默认值:JDK

    确定采用哪种方式(JDK或OPENSSL)来实现SSL连接。

    sslTruststore(SSL信任证书库路径)

    默认值:null

    指定SSL信任证书库的路径。

    sslTruststorePassword(SSL信任证书库密码)

    默认值:null

    指定SSL信任证书库的密码。

    sslKeystore(SSL钥匙库路径)

    默认值:null

    指定SSL钥匙库的路径。

    sslKeystorePassword(SSL钥匙库密码)

    默认值:null

    指定SSL钥匙库的密码。

    2.8.2. 通过JSON、YAML和Spring XML文件配置主从模式

    配置主从模式可以通过指定一个JSON格式的文件来实现。以下是JSON格式的配置文件样本。文件中的字段名称必须与MasterSlaveServersConfigConfig对象里的字段名称相符。

    配置主从模式可以通过指定一个YAML格式的文件来实现。以下是YAML格式的配置文件样本。文件中的字段名称必须与MasterSlaveServersConfigConfig对象里的字段名称相符。

    配置主从模式还可以通过Spring XML的命名空间来实现。以下是Spring XML格式的配置文件样本。文件中的属性名称在采用了Spring框架的命名规范并与MasterSlaveServersConfig和对象里的字段名称相符。