Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.

Definir configurações de CRUD no nível do cliente

Neste guia, você pode aprender como utilizar o driver Java para configurar operações CRUD para instâncias do MongoClient.

As preferências de leitura, as write concerns e as read concerns controlam como o driver direciona as operações de leitura e espera a confirmação das operações de leitura e gravação quando conectado a um conjunto de réplicas do MongoDB. As preferências de leitura e as preocupações de leitura se aplicam a todas as operações de leitura; as write concerns se aplicam a todas as operações de gravação.

Para obter mais informações, consulte a documentação do servidor sobre preferências de leitura, read concerns e write concerns.

MongoDatabase e as instâncias MongoCollection herdam suas preferências e preocupações do MongoClient que as acessa. No entanto, você pode aplicar configurações personalizadas aos seus bancos de dados e coleções. Para obter mais informações, consulte a página Configurar configurações personalizadas de CRUD.

Você pode especificar configurações de CRUD no nível do cliente usando uma string de conexão ou passando um objeto MongoClientSettings para o construtor MongoClients. Selecione a aba Connection String ou MongoClientSettings para visualizar as opções disponíveis:

Inclua os seguintes parâmetros em sua string de conexão para modificar o comportamento de leitura ou escrita do driver:

Nome da opção
Tipo
Descrição

journal

booleano

Especifica que o driver deve aguardar que a instância do MongoDB conectada faça o commit em grupo no arquivo de diário no disco para todas as gravações.

Padrão: false

w

string ou inteiro

Define a preocupação de gravação. Para obter mais informações sobre valores, consulte a documentação do MongoDB Server para a opção w.

Padrão: 1

wtimeoutMS

inteiro

Especifica um limite de tempo, em milésimos de segundo, para o preocupação de gravação. Para obter mais informações, consulte a documentação do MongoDB Server para a opção wtimeoutMS. Um valor de 0 instrui o driver a nunca esgotar as operações de gravação.

Padrão: 0

readPreference

string

Especifica a preferência de leitura. Para obter mais informações sobre valores, consulte a documentação do MongoDB Server para a opção readPreference.

Padrão: primary

readPreferenceTags

string

Especifica as marcações de preferência de leitura . Para obter mais informações sobre valores, consulte a documentação do MongoDB Server para a opção readPreferenceTags.

Padrão: null

maxStalenessSeconds

inteiro

Especifica, em segundos, o quão obsoleto um secundário pode ficar antes que o driver pare de se comunicar com esse secundário. O valor mínimo é 90 segundos ou a frequência de pulsação mais 10 segundos, o que for maior. Para obter mais informações, consulte a documentação do MongoDB Server para a opção maxStalenessSeconds. Não fornecer um parâmetro ou especificar explicitamente -1 indica que não deve haver verificação de obsolescência para secundários.

Padrão: -1

uuidRepresentation

string

Especifica a representação do UUID a ser usada nas operações de leitura e gravação. Para obter mais informações, consulte a documentação do driver para o método MongoClientSettings.getUuidRepresentation().

Padrão: unspecified

retryWrites

booleano

Especifica que o driver deve repetir as operações de gravação com suporte se elas não puderem ser concluídas devido a um erro de rede.

Padrão: true

retryReads

booleano

Especifica que o driver deve repetir as operações de leitura com suporte se não for possível concluir devido a um erro de rede.

Padrão: true

maxAdaptiveRetries

inteiro

Define o número máximo de vezes que o driver tenta novamente um comando que falha com um erro de sobrecarga que pode ser tentado novamente (ou seja, um erro que contém os rótulos SystemOverloadedError e RetryableError).

Esta opção se aplica a comandos de gravar apenas quando retryWrites está definido como true e a comandos de leitura apenas quando retryReads está definido como true. Definir o valor como 0 desativa as tentativas de repetição para erros de sobrecarga que podem ser repetidos.

Padrão: null. Quando essa opção não está definida, o driver normalmente aplica o valor 2.

enableOverloadRetargeting

booleano

Define se o driver pode despriorizar servidores durante a seleção de servidores para tentativas de repetição subsequentes se eles retornaram erros de sobrecarga anteriormente.

Esta opção aplicar-se a leituras quando retryReads está definido como true e a gravar quando retryWrites está definido como true. Esta opção não se aplica a clusters.

Padrão: false

O exemplo a seguir define a preferência de leitura para ler a partir do nó do conjunto de réplicas mais próximo:

ConnectionString connectionString = "mongodb://<host>:<port>/?readPreference=nearest"MongoClient mongoClient = MongoClients.create(connectionString)

Para obter mais informações sobre esses parâmetros, consulte a documentação da API ConnectionString.

Observação

Descarte de carga no Intelligent Gerenciamento de Carga de Trabalho (IWM)

Se erros com os rótulos SystemOverloadedError ou RetryableError estiverem causando falhas em seu aplicativo ou aparecendo em seus logs de aplicativo, o Load Shedding pode estar ativo em seu cluster e seu driver pode não ter sido atualizado para uma versão que o suporte. Recomendamos atualizar seu driver Java do MongoDB para a versão 5.8 ou posterior. Se você continuar a ver esses erros após a atualização, poderá resolvê-los por meio de alterações no lado do servidor, como revisar sua configuração de Load Shedding, ou por meio de alterações no lado do aplicativo, como implementar tratamento de erros personalizado ou limitação de solicitação do lado do cliente. Dependendo da sua situação, as alterações no lado do aplicativo podem ser preferíveis ou necessárias.

O Load Shedding é um recurso do IWM e ajuda a gerenciar a carga do servidor rejeitando operações em excesso durante a sobrecarga sustentada. Este recurso está disponível no MongoDB 9.0 e posterior.

Para obter mais informações sobre IWM ou como lidar com erros de sobrecarga, consulte a página Gerenciamento inteligente de carga de trabalho ou a página Erros de sobrecarga na documentação do Atlas.

Avalie esta página

Nesta página