Todos os produtos
Search
Central de documentação

ApsaraDB RDS:Otimize a latência de replicação para transações grandes

Última atualização: Jun 26, 2026

O ApsaraDB RDS for MySQL utiliza replicação lógica, na qual eventos de binlog são enviados da instância primária para uma réplica após a confirmação de uma transação. Transações grandes podem causar latência de replicação significativa, pois a réplica as aplica somente após a instância primária confirmar o commit. O recurso de aplicação em tempo real para transações grandes permite que a réplica inicie a execução de uma transação grande enquanto ela ainda está em andamento na instância primária, reduzindo a latência a quase zero e garantindo alta disponibilidade.

Como funciona

image

Latência de replicação para transações grandes (diagrama à esquerda): No MySQL, a réplica começa a aplicar uma transação grande somente após a confirmação na instância primária. O tempo de execução da transação na réplica torna-se a latência de replicação, durante a qual outras transações confirmadas ficam bloqueadas, atrasando as atualizações de dados.

Otimização de aplicação em tempo real para transações grandes (diagrama à direita): A transação grande é executada na instância primária e na réplica simultaneamente. Quando a transação é confirmada ou revertida na instância primária, a mesma operação ocorre na réplica.

Pré-requisitos

Para usar o recurso de aplicação em tempo real para transações grandes, sua instância deve atender ao seguinte requisito:

Procedimento

  1. Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique no ID da instância.

  2. No painel de navegação à esquerda, clique em Parameters.

  3. Na aba Editable Parameters, pesquise e configure os seguintes parâmetros:

    1. Ative o recurso de aplicação em tempo real para transações grandes:

      1. Defina loose_binlog_realtime_apply_long_trx_enabled como ON.

      2. Defina loose_binlog_realtime_transmit_source_enabled como ON.

      3. Defina loose_binlog_realtime_transmit_replica_enabled como ON.

    2. Outros parâmetros necessários:

      Parâmetro

      Descrição

      Valor recomendado

      loose_binlog_realtime_replica_long_transaction_limit_size

      Limiar de tamanho para acionar a replicação em tempo real. Quando os eventos de binlog gerados por uma transação excedem esse valor, o recurso é ativado automaticamente.

      64 MB

      loose_binlog_realtime_enable_log_messag

      Especifica se os logs de replicação em tempo real devem ser gravados no log de erros.

      ON

      loose_binlog_realtime_apply_workers

      Número de threads Brr Worker para replicação em tempo real.

      8

  4. Clique em OK e, em seguida, clique em Submit Parameters. Na caixa de diálogo exibida, escolha quando aplicar as alterações. As alterações de parâmetros entram em vigor imediatamente, sem exigir a reinicialização da instância.

Resultados da otimização

O exemplo a seguir demonstra o efeito desse recurso em uma transação de importação de dados com 5 milhões de linhas:

  • Antes da otimização: A transação é executada primeiro na instância primária. Após a confirmação, ela é aplicada na réplica. A latência de replicação equivale ao tempo de execução da transação.

  • Após a otimização: A transação é executada na instância primária e na réplica simultaneamente, eliminando a latência de replicação.

image.png