Visão geral
Neste guia, você pode aprender como configurar compressão de rede para sua conexão com MongoDB.
A compactação de rede é um recurso que permite compactar e descompactar mensagens enviadas entre seu aplicativo e o MongoDB, reduzindo a quantidade total de dados passados pela rede.
A biblioteca PHP suporta os seguintes compressores:
Observação
Seleção de compressor
Se você especificar vários compressores para usar em sua conexão, o driver selecionará o primeiro que for suportado pela implantação MongoDB à qual a biblioteca PHP está conectada.
Habilitar compressão de rede
Para habilitar a compressão para a conexão com sua implantação do MongoDB , utilize a opção de conexão do compressors
e especifique os algoritmos de compressão que deseja utilizar. Você pode fazer isso de duas maneiras:
Passe os algoritmos como um argumento para o construtor
MongoDB\Client
.Especifique os algoritmos em sua string de conexão.
O exemplo a seguir mostra como especificar Snappy, zlib e Zstandard como os compressores para uma conexão. Selecione a aba MongoDB\Client ou Connection URI para ver o código correspondente:
$client = new MongoDB\Client( 'mongodb://<hostname>:<port>', ['compressors' => 'snappy,zstd,zlib'], );
$uri = 'mongodb://<hostname>:<port>/?compressors=snappy,zstd,zlib'; $client = new MongoDB\Client($uri);
Especifique o nível de compressão da zlib
Se você especificar zlib
como um dos algoritmos de compressão, também poderá usar a opção zlibCompressionLevel
para especificar um nível de compressão. Esta opção aceita um valor inteiro entre -1
e 9
:
-1: (padrão). zlib usa seu nível de compressão padrão (geralmente
6
).0: sem compressão.
1: velocidade mais rápida, mas menor compressão.
9: a melhor compactação, mas a velocidade mais lenta.
O exemplo seguinte especifica o algoritmo de compressão zlib
e um valor zlibCompressionLevel
de 1
. Selecione a aba MongoDB\Client ou Connection URI para ver o código correspondente:
$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);
Documentação da API
Para saber mais sobre a classe MongoDB\Client
, consulte MongoDB\Client
na documentação da API da biblioteca.
Para visualizar uma lista completa de opções de URI que você pode passar para MongoDB\Client
um, consulte o MongoDB\Driver\Manager::__construct na documentação da API de extensão.