Menu Docs
Página inicial do Docs
/ / /
Driver C++
/

Comprimir tráfego de rede

Nesta página

  • Visão geral
  • Especifique algoritmos de compactação
  • Definir o nível de compressão zlib
  • Documentação da API

O driver C++ fornece uma opção de conexão para comprimir mensagens, o que reduz a quantidade de dados passados pela rede entre o MongoDB e seu aplicação.

O driver C++ suporta os seguintes algoritmos de compressão:

  1. Snappy: disponível no MongoDB 3.6 e posterior.

  2. zlib: Disponível MongoDB 3 no.6 e posterior.

  3. Zstandard: Disponível no MongoDB 4.2 e posterior.

Se você não especificar um algoritmo de compressão, o driver não comprimirá o tráfego de rede. Se você especificar vários algoritmos de compressão, o driver selecionará o primeiro na lista compatível com sua instância do MongoDB .

Para habilitar a compressão para a conexão com sua instância do MongoDB , inclua a opção de conexão compressors em seu URI e especifique os algoritmos de compressão que deseja usar. O código a seguir mostra como especificar os algoritmos snappy, zstd e zlib , nessa ordem:

#include <mongocxx/instance.hpp>
#include <mongocxx/uri.hpp>
#include <mongocxx/client.hpp>
int main()
{
mongocxx::instance instance;
mongocxx::uri uri("mongodb://<hostname>:<port>/?compressors=snappy,zstd,zlib");
mongocxx::client client(uri);
}

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 seguinte exemplo de código especifica o algoritmo de compressão zlib e um valor de 1 para a opção zlibCompressionLevel :

#include <mongocxx/instance.hpp>
#include <mongocxx/uri.hpp>
#include <mongocxx/client.hpp>
int main()
{
mongocxx::instance instance;
mongocxx::uri uri("mongodb://<hostname>:<port>/?compressors=zlib&zlibCompressionLevel=1");
mongocxx::client client(uri);
}

Para saber mais sobre os tipos e opções usadas nesta página, consulte a seguinte documentação da API:

  • mongocxx::instance

  • mongocxx:: cliente

  • mongocxx::uri

  • Opções de compressão

Voltar

Configurar TLS