配置分布式同步

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

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

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

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

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

配置分布式同步

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

配置分布式同步:

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

    状态命令的输出显示了集群上的端点列表以及端点的代理策略。

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

    如果代理策略(也称为角色)是single,请根据您的需求使用以下命令将策略配置为all-nodesall-master-shards

    rladmin bind db db:<ID> endpoint <endpoint id> policy <all-master-shards|all-nodes>
    
  2. 要配置数据库以使用分布式同步,请运行:

    rladmin tune db db:<ID> syncer_mode distributed
    

    要切换回集中同步,请运行:

    rladmin tune db db:<ID> syncer_mode centralized
    

验证数据库同步

使用 rladmin 来验证数据库同步角色:

rladmin info db db:<ID>

当前数据库角色报告为syncer_mode值:

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