readPreference
Visão geral
Você pode configurar apreferência de leitura de um cluster MongoDB Atlas vinculado para controlar o tipo de membro do conjunto de réplicas para o qual o Atlas App Services direciona as solicitações de leitura do banco de dados de dados. Você também pode especificar um conjunto de tags para direcionar membros específicos do conjunto de réplicas.
Não é possível definir a preferência de leitura em um conjunto de dados federado.
Por padrão, o Atlas App Services usa uma read preference de primary
, que roteia todas as solicitações de leitura por meio do nó primary de um conjunto de réplicas.
Quando especificar a preferência de leitura
A preferência de leitura padrão (primary
) deve ser suficiente para a maioria dos casos de uso. Considere especificar uma preferência de leitura do cluster quando precisar fazer o seguinte:
Leia de um secundário específico que tenha uma configuração personalizada, como um nó de analítica com índices especiais otimizados para reportar volumes de trabalho.
Leia de um nó em uma região específica de um conjunto de réplicas distribuído globalmente.
Mantenha a disponibilidade de leitura durante um failover de conjunto de réplicas, ou seja, continue lendo dados potencialmente obsoletos quando não houver nó
primary
.
Procedimento
Navegue até a tela de configuração do cluster
Você pode configurar a preferência de leitura de um cluster vinculado na tela de configuração do cluster na interface do usuário do App Services. Para acessar a tela de configuração, clique em Linked Data Sources abaixo Manage na navegação à esquerda. Na lista de fontes de dados, selecione o cluster no qual você deseja configurar a preferência de leitura.
Especifique uma preferência de leitura de cluster
Na tela de configuração do cluster, selecione um modo no menu suspenso Read Preference .
Os seguintes modos de read preference estão disponíveis:
Modo | Descrição |
---|---|
Atlas App Services roteia todas as operações de leitura para o nó primário do conjunto de réplicas atual. Este é o modo de read preference padrão. | |
Atlas App Services roteia todas as operações de leitura para o nó primário do conjunto de réplicas atual, se ele estiver disponível. Se o primário não estiver disponível, como durante um failover automático, as solicitações de leitura serão roteadas para um nó secundário . | |
Atlas App Services roteia todas as operações de leitura para um dos nós secundários do conjunto de réplicas atual. | |
Atlas App Services roteia todas as operações de leitura para um dos nós secundários disponíveis do conjunto de réplicas. Se nenhum secundário estiver disponível, as solicitações de leitura serão roteadas para o conjunto de réplicas primário . | |
Atlas App Services roteia as operações de leitura para o membro do conjunto de réplicas que tenha a menor latência de rede em relação ao cliente. |
Especificar marcações de preferência de leitura
Se especificar uma preferência de leitura diferente de primary
, você também poderá especificar uma ou mais marcações de preferência de leitura. Para atender a uma solicitação de leitura, um membro do conjunto de réplicas deve incluir todas as tags de preferência de leitura especificadas em sua configuração de nó.
Observação
Conjuntos de tags do Atlas cluster
Os clusters do MongoDB Atlas são configurados com conjuntos de tags predefinidos para cada nó de membro, dependendo do tipo de membro. Para obter informações detalhadas sobre quais marcações são nós definidos em um Atlas cluster, consulte Marcações de conjunto de réplicas do Atlas .
Para especificar uma tag de preferência de leitura, clique em Add Tag e, em seguida, insira os Key e Value da tag na nova linha da tabela Read Preference Tags .
Obtenha a versão mais recente da sua aplicação
Para definir a preferência de leitura de um cluster vinculado com a App Services CLI, você precisa de uma cópia local dos arquivos de configuração do seu aplicativo.
Para extrair uma cópia local da versão mais recente do seu aplicativo, execute o seguinte:
appservices pull --remote="<Your App ID>"
Dica
Você também pode baixar uma cópia dos arquivos de configuração do seu aplicativo na tela Deploy > Export App na interface do usuário do App Services.
Especifique uma preferência de leitura de cluster
Para configurar a preferência de leitura de um cluster vinculado, abra o arquivo config.json
do cluster e defina o valor de config.readPreference
:
{ "name": "<MongoDB Service Name>", "type": "mongodb-atlas", "config": { "readPreference": "<Read Preference Mode>" } }
Os seguintes modos de read preference estão disponíveis:
Modo | Descrição |
---|---|
Atlas App Services roteia todas as operações de leitura para o nó primário do conjunto de réplicas atual. Este é o modo de read preference padrão. | |
Atlas App Services roteia todas as operações de leitura para o nó primário do conjunto de réplicas atual, se ele estiver disponível. Se o primário não estiver disponível, como durante um failover automático, as solicitações de leitura serão roteadas para um nó secundário . | |
Atlas App Services roteia todas as operações de leitura para um dos nós secundários do conjunto de réplicas atual. | |
Atlas App Services roteia todas as operações de leitura para um dos nós secundários disponíveis do conjunto de réplicas. Se nenhum secundário estiver disponível, as solicitações de leitura serão roteadas para o conjunto de réplicas primário . | |
Atlas App Services roteia as operações de leitura para o membro do conjunto de réplicas que tenha a menor latência de rede em relação ao cliente. |
Especificar marcações de preferência de leitura
Se especificar uma preferência de leitura diferente de primary
, você também poderá especificar uma ou mais marcações de preferência de leitura. Para atender a uma solicitação de leitura, um membro do conjunto de réplicas deve incluir todas as tags de preferência de leitura especificadas em sua configuração de nó. Para especificar um conjunto de tags de preferência de leitura para um cluster, verifique se você especificou um readPreference
diferente de primary
e, em seguida, adicione um ou mais objetos de definição de tag a config.readPreferenceTagSets
:
{ "name": "<MongoDB Service Name>", "type": "mongodb-atlas", "config": { "readPreference": "<Read Preference Mode (other than primary)>", "readPreferenceTagSets": [ { <Tag Key>: <Tag Value> }, ... ], } }
Observação
Conjuntos de tags do Atlas cluster
Os Atlas clusters são configurados com conjuntos de tags predefinidos para cada nó de membro, dependendo do tipo do membro. Para obter informações detalhadas sobre quais marcações são nós definidos em um Atlas cluster, consulte Marcações de conjunto de réplicas do Atlas .