压缩网络流量
Overview
C++驾驶员提供了一个连接选项来压缩消息,从而减少了MongoDB和您的应用程序之间通过网络传递的数据量。
C++驾驶员支持以下压缩算法:
如果不指定压缩算法,驾驶员将不会压缩网络流量。 如果指定多种压缩算法,驾驶员会选择MongoDB实例支持的列表中的第一个算法。
指定压缩算法
要为MongoDB实例的连接启用压缩,请在 URI 中包含 compressors
连接选项,并指定要使用的压缩算法。 以下代码展示了如何按顺序指定snappy
、 zstd
和zlib
算法:
int main() { mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>/?compressors=snappy,zstd,zlib"); mongocxx::client client(uri); }
设置zlib压缩级别
如果您指定zlib
作为其中一种压缩算法,则还可以使用zlibCompressionLevel
选项来指定压缩级别。 此选项接受-1
和9
之间的整数值:
-1: (默认)。 zlib使用其默认压缩级别(通常为
6
)。0 :无压缩。
1 :速度最快,但压缩率最低。
9 :压缩最佳,但速度最慢。
以下代码示例指定了zlib
压缩算法以及zlibCompressionLevel
选项的1
值:
int main() { mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>/?compressors=zlib&zlibCompressionLevel=1"); mongocxx::client client(uri); }
API 文档
要学习;了解有关此页面上使用的类型和选项的更多信息,请参阅以下API文档: