文档菜单

文档首页开发应用程序Python 驱动程序PyMongo

压缩网络流量

本页内容

  • 概述
  • 指定压缩算法
  • 设置 zlib 压缩级别

PyMongo 提供了压缩消息的连接选项,这可以减少 MongoDB 和您的应用程序之间的网络传输数据量。

PyMongo 支持以下压缩算法。

  1. Snappy:MongoDB 3.6 及以上版本支持。此选项需要 python-snappy 包。

  2. Zlib:MongoDB 3.6 及以上版本支持。此选项需要包含在 Python 1.5 及以上标准库中的 zlib 模块。

  3. Zstandard:从 MongoDB 4.2 版本开始提供。此选项需要 zstandard 包。

如果您未指定压缩算法,PyMongo 不会压缩您的网络流量。如果您指定了多个压缩算法,驱动程序将选择您 MongoDB 实例支持的列表中的第一个。

要启用与您的 MongoDB 实例的连接的压缩,请使用compressors 连接选项并指定您想要使用的压缩算法。您可以通过两种方式完成此操作

  • 将算法作为参数传递给 MongoClient 构造函数。

  • 在连接字符串中指定算法。

以下代码示例展示了这两种选项

如果您指定 zlib 作为您的压缩算法之一,您还可以使用 zlibCompressionLevel 选项来指定一个压缩级别。此选项接受一个介于 -19 之间的整数值

  • -1:(默认)。zlib 使用其默认压缩级别(通常是 6)。

  • 0:不压缩。

  • 1:最快的速度但压缩效果最低。

  • 9:最佳的压缩效果但速度最慢。

以下代码示例指定了 zlib 压缩算法以及 zlibCompressionLevel 选项的 1

← 配置传输层安全(TLS)