2 回答
TA贡献1873条经验 获得超9个赞
MongoDB Client驱动设置中网络相关的等待设置比较多,依次介绍如下:
1、Client找Server所需要等待的时间,在RS或者Shard环境下,Client需要找到它所需的Server
对应的参数:ServerSelctionTimeOut
2、找到Server之后就需要建立Connection
1)每次都创建Connection,对应的网络等待的参数就是:connectTimeout 2)Connection pooling的话,从Connection Pool取得Connection,对应的网络等待的参数:maxWaitTime.
3、找到Connection之后,就有了Socket通信,在客户端和MonogoDB的Socket通信过程中的网络等待时间的参数就是:socketTimeout
供参考。
Love MongoDB!Have Fun!
TA贡献1856条经验 获得超17个赞
Stackoverflow上有一个有140次赞的回答:How to configure MongoDB Java driver MongoOptions for production use?
connectTimeout. As the name suggest number of milliseconds the driver will wait before a connection attempt is aborted. Set timeout to something long (15-30 seconds) unless there's a realistic, expected chance this will be in the way of otherwise succesful connection attempts. Normally if a connection attempt takes longer than a couple of seconds your network infrastructure isn't capable of high throughput.
maxWaitTime. Number of ms a thread will wait for a connection to become available on the connection pool, and raises an exception if this does not happen in time. Keep default.
socketTimeout. Standard socket timeout value. Set to 60 seconds (60000).
- 2 回答
- 0 关注
- 727 浏览
添加回答
举报