Docs Menu
Docs Home
/ /

Configurar ajustes CRUD a nivel de cliente

En esta guía, puede aprender a utilizar el controlador Java para configurar operaciones CRUD para MongoClient instancias.

Las preferencias de lectura, las preocupaciones de lectura y las preocupaciones de escritura controlan cómo el controlador enruta las operaciones de lectura y espera la confirmación de las operaciones de lectura y escritura al conectarse a un conjunto de réplicas de MongoDB. Las preferencias de lectura y las preocupaciones de lectura se aplican a todas las operaciones de lectura; las preocupaciones de escritura, a todas las operaciones de escritura.

Para obtener más información, consulte la documentación del servidor en Leer preferencias, leer inquietudes y escribir inquietudes.

MongoDatabase Las instancias MongoCollection y MongoClient heredan sus preferencias e inquietudes de la instancia que accede a ellas. Sin embargo, puede aplicar configuraciones personalizadas a sus bases de datos y colecciones. Para obtener más información, consulte PáginaConfigurar ajustes CRUD personalizados.

Puede especificar la configuración CRUD a nivel de cliente mediante una cadena de conexión o pasando un MongoClientSettings objeto al constructor MongoClients. Seleccione el Connection String o pestaña MongoClientSettings para ver las opciones disponibles:

Incluya los siguientes parámetros en su cadena de conexión para modificar el comportamiento de lectura o escritura del controlador:

Nombre de la opción
Tipo
Descripción

journal

booleano

Especifica que el controlador debe esperar a que la instancia MongoDB conectada realice la confirmación agrupada en el archivo de diario en el disco para todas las escrituras.

Por defecto: false

w

cadena o entero

Especifica el problema de escritura. Para obtener más información sobre los valores, consulte la documentación de MongoDB Server para la opción w.

Por defecto: 1

wtimeoutMS

entero

Especifica un límite de tiempo, en milisegundos, para la operación de escritura. Para obtener más información, consulte la documentación del servidor MongoDB para la opción wtimeoutMS. Un valor de 0 indica al controlador que nunca agote el tiempo de espera de las operaciones de escritura.

Por defecto: 0

readPreference

string

Especifica la preferencia de lectura. Para obtener más información sobre los valores, consulte la documentación del servidor MongoDB para la opción readPreference.

Por defecto: primary

readPreferenceTags

string

Especifica las etiquetas de preferencia de lectura. Para obtener más información sobre los valores, consulte la documentación del servidor MongoDB para la opción readPreferenceTags.

Por defecto: null

maxStalenessSeconds

entero

Especifica, en segundos, el tiempo de inactividad de un secundario antes de que el controlador deje de comunicarse con él. El valor mínimo es 90 segundos o la frecuencia de latido más 10 segundos, el que sea mayor. Para obtener más información, consulte la documentación del servidor MongoDB para la opción maxStalenessSeconds. Si no se proporciona un parámetro o se especifica explícitamente, no -1 se debe realizar ninguna comprobación de inactividad para los secundarios.

Por defecto: -1

uuidRepresentation

string

Especifica la representación UUID que se usará para las operaciones de lectura y escritura. Para obtener más información, consulte la documentación del controlador para el método MongoClientSettings.getUuidRepresentation().

Por defecto: unspecified

retryWrites

booleano

Especifica que el controlador debe volver a intentar las operaciones de escritura admitidas si no pueden completarse debido a un error de red.

Por defecto: true

retryReads

booleano

Especifica que el controlador debe volver a intentar las operaciones de lectura admitidas si no pueden completarse debido a un error de red.

Por defecto: true

El siguiente ejemplo establece la preferencia de lectura para leer desde el miembro del conjunto de réplicas más cercano:

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

Para obtener más información sobre estos parámetros, consulte la documentación de la API ConnectionString.

Encadene los siguientes métodos a su constructor MongoClientSettings para modificar el comportamiento de lectura/escritura del controlador:

readConcern()

Establece la preocupación de lectura. Página del manual del servidor, documentación de la API.

readPreference()

Establece la preferencia de lectura

Por defecto: primary

retryReads()

Si el controlador realiza reintentos de lectura si ocurre un error de red.

Por defecto: true

retryWrites()

Si el controlador realiza reintentos de escritura si ocurre un error de red.

Por defecto: true

uuidRepresentation()

Establece la representación UUID que se utilizará al codificar instancias de UUID y decodificar valores binarios BSON con el subtipo 3.

writeConcern()

Configura el nivel de confirmación de escritura

Por defecto: WriteConcern#ACKNOWLEDGED. | Para obtener más información sobre el valor por defecto, consulta nivel de confirmación de escritura (write concern) Implícito por Defecto.

El siguiente ejemplo establece la preferencia de lectura para leer desde el miembro del conjunto de réplicas más cercano:

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

Para obtener más información sobre estos métodos, consulte la documentación de la API MongoClientSettings.Builder.

Volver

Configuración del socket

En esta página