alp*_*per 7 java mongodb reactive
阻止 MongoDB 驱动程序具有MongoClientOptions,其中包含客户端设置。
反应式驱动程序MongoClients.create()期望MongoClientSettings作为参数。
大多数设置MongoClientOptions在MongoClientSettings.
connectionsPerHost但我在 中找不到替代方案MongoClientSettings。
我错过了什么吗?
小智 9
我相信,作为新 MongoDB 驱动程序设计的一部分,connectionsPerHost 参数已更改为 ConnectionPoolSettings.maxSize。请对此持保留态度,因为我尚未测试它是否是完全等效的选项。
对于Async驱动的描述threadsAllowedToBlockForConnectionMultiplier如下,来自MongoDB文档MongoClientSettings.getConnectionPoolSettings ():
获取设置对象中连接提供程序的设置。此设置对象包装了 minConnectionPoolSize、maxConnectionPoolSize、maxWaitTime、maxConnectionIdleTime 和 maxConnectionLifeTime 的值,并使用 maxConnectionPoolSize 和threadsAllowedToBlockForConnectionMultiplier 来计算 maxWaitQueueSize。
可以在ConnectionPoolSettings.applyConnectionString ()中观察到此行为:
maxWaitQueueSize(threadsAllowedToBlockForConnectionMultiplier * maxSize);
Run Code Online (Sandbox Code Playgroud)
与原始MongoClientOptions.getThreadsAllowedToBlockForConnectionMultiplier ()的描述相比,此行为似乎相似:
该乘数与connectionsPerHost 设置相乘,得出可能正在等待池中可用连接的最大线程数。所有其他线程将立即收到异常。例如,如果connectionsPerHost 为10,threadsAllowedToBlockForConnectionMultiplier 为5,则最多可以有50 个线程等待连接。
| 归档时间: |
|
| 查看次数: |
3201 次 |
| 最近记录: |