Overview
在本指南中,您可以学习;了解如何为MongoDB的连接配置网络压缩。
网络压缩功能允许您压缩和解压缩应用程序与 MongoDB 之间发送的消息,从而减少通过网络传递的数据总量。
PHP库支持以下压缩程序:
注意
压缩器选择
如果指定在连接上使用多个压缩器,驾驶员会选择PHP库连接到的MongoDB 部署支持的第一个压缩器。
启用网络压缩
要为MongoDB 部署的连接启用压缩,请使用 compressors
连接选项并指定要使用的压缩算法。您可以通过两种方式执行此操作:
将算法作为参数传递给
MongoDB\Client
构造函数。在连接string中指定算法。
以下示例演示如何将 Snappy、 zlib和 Zstandard 指定为连接的压缩器。 选择 MongoDB\Client 或 Connection URI标签页以查看相应的代码:
$client = new MongoDB\Client( 'mongodb://<hostname>:<port>', ['compressors' => 'snappy,zstd,zlib'], );
$uri = 'mongodb://<hostname>:<port>/?compressors=snappy,zstd,zlib'; $client = new MongoDB\Client($uri);
指定zlib压缩级别
如果您指定zlib
作为其中一种压缩算法,则还可以使用zlibCompressionLevel
选项来指定压缩级别。 此选项接受-1
和9
之间的整数值:
- 1 :(默认)。 zlib使用默认压缩级别(通常为
6
)。0 :无压缩。
1 :速度最快,但压缩率最低。
9 :压缩最佳,但速度最慢。
以下示例指定了 zlib
压缩算法和 zlibCompressionLevel
值 1
。选择MongoDB\Client或Connection URI标签页以查看相应的代码:
$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);
API 文档
要学习;了解有关 MongoDB\Client
类的详情,请参阅库API文档中的 MongoDB\Client
。
要查看可传递给 的 URIMongoDB\Client
选项的完整列表,请参阅扩展API文档中的MongoDB\ 驱动程序\ 经理 ::__construct 参数。