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.
Menu Docs

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 write concern. 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 tags 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 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 UUID a ser usada para 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

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.

Encadeie os seguintes métodos ao construtor MongoClientSettings para modificar o comportamento de leitura/gravação do driver:

readConcern()

readPreference()

Define a preferência de leitura

Padrão: primary

retryReads()

Se o driver realiza novas leituras se ocorrer um erro de rede.

Padrão: true

retryWrites()

Se o driver realiza gravações repetidas se ocorrer um erro de rede.

Padrão: true

uuidRepresentation()

Define a representação UUID para utilizar ao codificar instâncias de UUID e decodificando valores binários BSON com subtipo de 3.

writeConcern()

Define a write concern.

Padrão: WriteConcern#ACKNOWLEDGED. | Para obter mais informações sobre o valor padrão, consulte Write Concern padrão implícita.

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

MongoClient mongoClient = MongoClients.create(
MongoClientSettings.builder().applyConnectionString(new ConnectionString("<your connection string>"))
.readPreference(ReadPreference.nearest())
.build());

Para obter mais informações sobre esses métodos, consulte a documentação da API do MongoClientSettings.Builder.

Observação

Redução de carga no Intelligent Workload Management (IWM)

Se os erros com rótulos SystemOverloadedError ou RetryableError estiverem causando falhas no seu aplicação ou aparecendo nos registros do seu aplicação , a redução de carga pode estar ativa no seu cluster e seu driver pode não estar atualizado para uma versão compatível. 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 servidor, como a revisão da configuração do Descarte de carga, ou por meio de alterações no aplicativo, como a implementação de um tratamento personalizado de erros ou a limitação de solicitações do lado do cliente . Dependendo da sua situação, alterações no aplicativo podem ser preferíveis ou necessárias.

O descarte de carga é 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 lidar com erros de sobrecarga, consulte a página Gerenciamento Inteligente de Volume de Trabalho ou a página Erros de Sobrecarga na documentação do Atlas .

Avalie esta página

Nesta página