配置分布式同步

如何配置分布式同步,以便任何可用的代理终端节点都可以管理同步流量。

Redis 企业软件

复制的数据库,例如 Replica OfActive-Active 数据库, 使用代理终端节点将数据库更改与其他参与集群上的数据库同步。

为了提高同步流量的吞吐量并降低延迟, 您可以将复制的数据库配置为使用分布式同步,其中任何可用的代理终端节点都可以管理同步流量。

默认情况下,每个数据库都有一个代理终端节点,用于管理客户端和与数据库分片的同步通信。 该代理终端节点用于数据库同步。 这称为集中同步。

要准备数据库以使用分布式同步,您必须首先确保定义数据库代理策略,以便每个节点都有一个代理终端节点,或者每个主(主)分片都有一个代理终端节点。 在数据库具有多个代理后, 您可以将数据库同步配置为使用分布式同步。

配置分布式同步

注意:
您可以使用数据库名称代替db:<ID>在以下rladmin命令。

要配置 Distributed synchronization:

  1. 要检查数据库的代理策略,请运行:rladmin status

    status 命令的输出显示集群上的终端节点列表以及终端节点的代理策略。

    ENDPOINTS:
    DB:ID       NAME      ID                        NODE          ROLE                                SSL
    db:1        db        endpoint:1:1              node:1        all-master-shards                   No
    

    If the proxy policy (also known as a role) is single, configure the policy to all-nodes or all-master-shards according to your needs with the command:

    rladmin bind db db:<ID> endpoint <endpoint id> policy <all-master-shards|all-nodes>
    
  2. To configure the database to use distributed synchronization, run:

    rladmin tune db db:<ID> syncer_mode distributed
    

    To change back to centralized synchronization, run:

    rladmin tune db db:<ID> syncer_mode centralized
    

Verify database synchronization

Use rladmin to verify a database synchronization role:

rladmin info db db:<ID>

The current database role is reported as the syncer_mode value:

$ rladmin info db db:<ID>     
db:<ID> [<db_name>]:
  // (Other settings removed) 
  syncer_mode: centralized
RATE THIS PAGE
Back to top ↑