Docs Menu
Docs Home
/ /

Comprimir el tráfico de la red

En esta guía, puede aprender a configurar la compresión de red para su conexión a MongoDB.

La compresión de red es una función que le permite comprimir y descomprimir los mensajes enviados entre su aplicación y MongoDB, reduciendo la cantidad total de datos que pasan por la red.

La biblioteca PHP admite los siguientes compresores:

  1. Rápido

  2. Zlib

  3. Zstandard

Nota

Selección del compresor

Si especifica varios compresores para usar en su conexión, el controlador selecciona el primero que sea compatible con la implementación de MongoDB a la que está conectada la biblioteca PHP.

Para habilitar la compresión para la conexión a su implementación de MongoDB, utilice el compressors Opción de conexión y especifique los algoritmos de compresión que desea utilizar. Puede hacerlo de dos maneras:

  • Pase los algoritmos como argumento al constructor MongoDB\Client.

  • Especifique los algoritmos en su cadena de conexión.

El siguiente ejemplo muestra cómo especificar Snappy, Zlib y Zstandard como compresores para una conexión. Seleccione el MongoDB\Client o pestaña Connection URI para ver el código correspondiente:

$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
['compressors' => 'snappy,zstd,zlib'],
);
$uri = 'mongodb://<hostname>:<port>/?compressors=snappy,zstd,zlib';
$client = new MongoDB\Client($uri);

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 especifica el algoritmo de compresión zlib y un valor zlibCompressionLevel de 1. Seleccione la pestaña MongoDB\Client o Connection URI para ver el código correspondiente:

$uriOptions = [
'compressors' => 'zlib',
'zlibCompressionLevel' => 1,
];
$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
$uriOptions,
);
$uri = 'mongodb://<hostname>:<port>/?compressors=zlib&zlibCompressionLevel=1';
$client = new MongoDB\Client($uri);

Para obtener más información sobre la clase MongoDB\Client, consulte MongoDB\Client en la documentación de la API de la biblioteca.

Para ver una lista completa de las opciones de URI que puede pasar a un,MongoDB\Client consulte los parámetros MongoDB\Driver\Manager::__construct en la documentación de la API de extensión.

Volver

Stable API

En esta página