1.初步判定是c#官方驅(qū)動沒能及時釋放連接: http://stackoverflow.com/questions/7446528/mongodb-c-sharp-driver-doesnt-release-connections-then-errors
How many connections does each mongos need?
In a sharded configuration will have 1 incoming connection from the client but may need 1 outgoing connection to each shard (possibly mongos?times the number of nodes if the shard is backed by a replicaset).
This means that the possible number of open connections that a server requires could be ?(1 + (N*M) * C)where N = number of mongos?shards, M = number of replicaset nodes, and C = number of client connections.
Why does ?
mongos?
never seem to give up connections??
mongos uses a set of connection pools to communicate to each shard (or shard replicaset node). These pools of connections do not currently
constrict when the number of clients decreases. This will lead to a possibly large number of connections being kept if you have even used the mongos
instance before, even if it is currently not being used.?
How can I see the connections used by mongos?
??
Run this command on each instance: mongos
db._adminCommand("connPoolStats" );?
https://jira.mongodb.org/browse/CSHARP-331
2.設(shè)置了sockettimeout=300000沒能生效: http://www.mongodb.org/display/DOCS/Connections ,單位應(yīng)該是ms,不行的話換sockettimeoutms試試~~
應(yīng)該就是這個原因了,是sockettimeout的單位是tick,不是毫秒。
?
?
?
3.剛開始全部啟動測試時,很有可能崩掉一大片
?
4. ? ?社區(qū)給我的答案,沒試過
?
5.2012-04-11補充,對mongo重新做了些測試,發(fā)現(xiàn)有兩種情況會導致,一個連接超時,默認是30s,另外一個是連接的關(guān)閉,不要輕易調(diào)用connect.close
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
