Overview
El controlador C++ proporciona una opción de conexión para comprimir mensajes, lo que reduce la cantidad de datos entre MongoDB y su aplicación que pasa a través de la red.
El controlador C++ admite los siguientes algoritmos de compresión:
Si no especifica un algoritmo de compresión, el controlador no comprime el tráfico de red. Si especifica varios algoritmos de compresión, el controlador selecciona el primero de la lista compatible con su instancia de MongoDB.
Especificar algoritmos de compresión
Para habilitar la compresión para la conexión a su instancia de MongoDB, incluya el
compressors Opción de conexión en su URI y especifique los algoritmos de compresión que desea utilizar. El siguiente código muestra cómo especificar los algoritmos snappy, zstd y zlib, en ese orden:
int main() { mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>/?compressors=snappy,zstd,zlib"); mongocxx::client client(uri); }
Establecer el nivel de compresión zlib
Si especifica zlib como uno de sus algoritmos de compresión, también puede usar la opción zlibCompressionLevel para especificar un nivel de compresión. Esta opción acepta un valor entero entre -1 y 9:
-1: (Predeterminado). zlib utiliza su nivel de compresión predeterminado
6(normalmente).0: Sin compresión.
1: Velocidad más rápida pero compresión más baja.
9: Mejor compresión pero velocidad más lenta.
El siguiente ejemplo de código especifica el algoritmo de compresión zlib y un valor de 1 para la opción zlibCompressionLevel:
int main() { mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>/?compressors=zlib&zlibCompressionLevel=1"); mongocxx::client client(uri); }
Documentación de la API
Para obtener más información sobre los tipos y opciones utilizados en esta página, consulte la siguiente documentación de API: