As instâncias de replica set do ApsaraDB for MongoDB utilizam uma arquitetura multinó para oferecer alta disponibilidade integrada, failover automático e dimensionamento de leitura — sem necessidade de configuração manual.
Arquitetura

Uma instância de replica set é composta pelos seguintes nós:
Nó primário: processa todas as solicitações de leitura e gravação. Cada instância tem exatamente um nó primário.
Nó secundário: replica os dados do nó primário por meio de oplogs. Se o nó primário falhar, um nó secundário é automaticamente eleito como novo primário.
Nó oculto: replica os dados do nó primário por meio de oplogs. Atua como standby e substitui automaticamente um nó secundário ou somente leitura com falha. O nó oculto é invisível aos usuários, não aparece na lista de nós secundários e não pode ser eleito como primário — mas ainda participa das eleições. Cada instância tem exatamente um nó oculto.
Nó somente leitura (opcional): replica os dados do nó primário ou secundário com menor latência. Descarrega o tráfego de leitura dos nós primário e secundário.
O termo "nós primário e secundário" abrange o nó primário, os nós secundários e o nó oculto.
Alta disponibilidade
Os nós secundários mantêm uma cópia sincronizada dos dados do nó primário. Quando o nó primário falha, uma eleição promove automaticamente um nó secundário a primário — garantindo a continuidade do serviço sem intervenção manual.
Se um nó secundário falhar, o nó oculto é automaticamente eleito como nó secundário substituto. Caso essa operação não ocorra de forma automática, execute-a manualmente. Da mesma forma, se um nó somente leitura falhar, o nó oculto é automaticamente eleito como nó somente leitura substituto. Caso a operação não ocorra de forma automática, execute-a manualmente. Em ambos os casos, a URI de string de conexão do nó permanece inalterada após a troca de função.
Cada troca de função pode causar uma interrupção de conexão transitória de até 30 segundos. Agende as trocas durante períodos de baixo tráfego ou certifique-se de que sua aplicação consiga se reconectar automaticamente. Para mais detalhes, consulte Alternar funções de nó.
Dimensionamento de leitura
Conecte-se a um nó secundário por meio de sua URI de string de conexão para obter acesso somente leitura à instância.
Os nós somente leitura ampliam ainda mais a capacidade de leitura: usam uma URI de string de conexão dedicada, independente dos nós primário e secundário, o que os torna adequados para conexão direta de sistemas distintos. Quando uma instância tem dois ou mais nós somente leitura, use a URI de string de conexão somente leitura para distribuir o tráfego de leitura entre todos eles. Para mais informações, consulte Nós somente leitura.
Referência de nós
|
Nó |
Função |
Restrições |
|
Nó primário |
Processa todas as solicitações de leitura e gravação |
Um por instância |
|
Nó secundário |
Replica os dados do primário via oplogs; elegível para eleição como primário |
Um ou mais por instância |
|
Nó oculto |
Nó standby; substitui automaticamente um nó secundário ou somente leitura com falha |
Um por instância; invisível aos usuários; não pode ser eleito como primário; participa das eleições |
|
Nó somente leitura |
Replica a partir do primário ou secundário com menor latência; descarrega o tráfego de leitura |
Opcional; um ou mais por instância; não exibido na lista de nós secundários; não pode ser eleito como primário; não participa das eleições |
Expansão de uma instância de replica set
Adicione nós secundários ou somente leitura para aumentar a capacidade de leitura. A quantidade de nós ocultos é fixa em um e não pode ser alterada.
Essa flexibilidade é útil para cargas de trabalho com alto volume de leitura e baixo volume de gravação — como plataformas de leitura online ou sistemas de consulta de pedidos — nas quais é possível adicionar ou remover nós secundários ou somente leitura conforme a demanda de tráfego.
Para alterar a configuração dos nós, consulte Alterar as configurações de uma instância de replica set.