套接字设置
Overview
在本指南中,您可以学习;了解Java驾驶员如何管理套接字设置。
您可以使用 连接字符串 或将 MongoClientSettings
对象传递给 MongoClients 构造函数来指定套接字设置。选择 Connection String 或 MongoClientSettings标签页,查看可用选项:
选项名称 | 类型 | 说明 |
---|---|---|
| 整型 | 指定 Java 驱动程序在超时前等待连接打开的最长时间(毫秒)。值为 默认: |
| 整型 | 指定 Java 驱动程序在超时之前等待发送或接收请求的最长时间(以毫秒为单位)。值为 默认值: |
此示例指定驾驶员将在等待连接打开 15 秒后超时:
ConnectionString connectionString = "mongodb://<host>:<port>/?connectTimeoutMS=15000" MongoClient mongoClient = MongoClients.create(connectionString)
有关这些参数的更多信息,请参阅 ConnectionString API文档。
链接 applyToSocketSettings () 方法,以修改驱动程序在连接您的 MongoDB 部署并与之通信时的行为。
下表描述了可以链接到设置以修改驱动程序行为的方法:
方法 | 说明 |
---|---|
| 使用 |
| 使用在 |
| 设置在引发超时异常之前连接到可用套接字的最长时间。 默认值: |
| 设置在引发超时异常之前从可用套接字读取的最长时间。 默认: |
| 设置接收时套接字的缓冲区大小。 默认值:操作系统默认值 |
| 设置发送时套接字的缓冲区大小。 默认值:操作系统默认值 |
注意
使用 SOCKS5 代理连接到MongoDB
您可以将 applyToProxySettings()
方法链接到套接字设置,以使用 SOCKS5 代理连接到MongoDB 。要学习;了解如何使用 SOCKS5 代理和设立代理设置,请参阅《使用 SOCKS5 代理连接到MongoDB》指南。
本示例在 MongoDB 套接字中指定了以下驱动程序行为:
连接到可用套接字
10 SECONDS
从可用套接字读取,在
15 SECONDS
MongoClient mongoClient = MongoClients.create( MongoClientSettings.builder() .applyConnectionString(new ConnectionString("<your connection string>")) .applyToSocketSettings(builder -> builder.connectTimeout(10, SECONDS) .readTimeout(15, SECONDS)) .build());
有关链式方法的更多信息,请参阅 MongoClientSettings.Builder API文档。