<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    paulwong

    MongDB連接池參數serverSelectionTimeout、connectTimeout、maxWaitTime和socketTimeout介紹

    MongDB Client請求查詢數據,需要包括五個階段:
    MongoDB Client需要找到可用的MongoDB Server
    MongoDB Client需要和MongoDB Server建立(new)Connection
    應用程序處理線程從Connection Pool中獲取Connection
    數據傳輸(獲取連接后,進行Socket通信,獲取數據)
    斷開Collection
    那么,MongoDB Client驅動設置中網絡相關等待超時參數serverSelectionTimeout、connectTimeout、maxWaitTime和socketTimeout分別對應上面哪個環節呢?
    參數serverSelectionTimeout:對應第1個環節,即MongoDB Client需要找到可用的MongoDB Server所需要的等待時間,                                             MongDB部署的生產一般由多個服務器組成,要么作為一個復制集或者作為一個分片集群,參數                                                     serverSelectionTimeout的值即為多長時間內找不到合適服務器時候就決定放棄的時間間隔;
    參數connectTimeout:對應第2個環節,每次創建Connection,對應的網絡等待。單位毫秒數, 0表示沒有限制;
    參數maxWaitTime:對應第3個環節,應用程序處理線程從連接池中獲取Collection,對應的網絡等待時間。單位毫秒數,0表示                                   不等待,負數表示等待時間不確定;
    參數socketTimeout:對應第4個環節,獲取Connection后,就有了Socket通信,獲取數據,即在MonogoDB Client                                                      和MonogoDB Server的Socket通信過程中的網絡等待時間。單位毫秒數,默認配置為0,也就是沒有限制,                                  沒有超 時限制,系統出了問題也不容易發現,應該根據實際情況,給出合理的超時時間。
     
    其他相關參數如下:
    connectionsPerHost:對mongo實例來說,每個host允許鏈接的最大鏈接數,這些鏈接空閑時會放入池中,如果鏈接被耗盡,任何請求鏈接的操作會被阻塞等待鏈接可用,推薦配置10
    minPoolsSize:當Connection空閑時,Connection Pool中最少Connection保有量;
    threadsAllowedToBlockForConnectionMultiplier:每個Connection的可以阻塞等待的線程隊列數,它以上面connectionsPerHost值相乘的結果就是阻塞等待的線程隊列最大值。如果連接線程排滿了隊列就會拋出“Out of semaphores to get db”錯誤。
    socketKeepAlive:該標志用于控制socket保持活動的功能,通過防火墻保持連接活著
    socketKeepAlive=false
    autoConnectRetry:這個控制是否在一個Connection時,系統會自動重試
    #true:假如Connection不能建立時,驅動將重試相同的server,有最大的重試次數,默認為15次,這樣可以避免一些server因為一些阻塞操作零時down而驅動拋出異常,這個對平滑過度到一個新的master,也是很有用的,注意:當集群為復制集時,驅動將在這段時間里,嘗試鏈接到舊的master上,而不會馬上鏈接到新master上
    #false 當在進行socket讀寫時,不會阻止異常拋出,驅動已經有自動重建破壞鏈接和重試讀操作. 推薦配置false
    autoConnectRetry=false
    #重新打開鏈接到相同server的最大毫秒數,推薦配置為0,如果 autoConnectRetry=true,表示時間為15s
    #com.jd.mongodbclient2.mongo.JDClientMongo.maxAutoConnectRetryTime=false
    #表示當沒有手動關閉游標時,是否有一個自動釋放游標對象的方法,如果你總是很小心的關閉游標,則可以將其設為false 推薦配置true

    https://docs.mongodb.com/manual/reference/connection-string/#connections-connection-options
    ————————————————
    版權聲明:本文為CSDN博主「pursuer211」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
    原文鏈接:https://blog.csdn.net/pursuer211/article/details/82994027

    posted on 2020-03-07 20:58 paulwong 閱讀(1320) 評論(0)  編輯  收藏 所屬分類: MONGODB

    主站蜘蛛池模板: 日韩精品亚洲专区在线影视| 亚洲妓女综合网99| 亚洲福利在线观看| 99ri精品国产亚洲| 亚洲精品福利你懂| 免费一级做a爰片久久毛片潮| 久久免费视频一区| 久久国产高潮流白浆免费观看| 无码国产精品一区二区免费式直播| 成在人线AV无码免费| 亚洲欧洲中文日韩av乱码| 亚洲国产成人高清在线观看| 亚洲国产精品成人综合久久久 | 久久亚洲高清观看| 亚洲电影在线免费观看| 亚洲av最新在线观看网址| 一级毛片免费全部播放| 99久久人妻精品免费一区| 国内自产少妇自拍区免费| 久久久久久亚洲精品不卡| 亚洲视频精品在线观看| 久久亚洲中文字幕无码| 免费久久人人爽人人爽av| 在线精品一卡乱码免费| 亚洲第一永久AV网站久久精品男人的天堂AV | 成人无码a级毛片免费| 麻豆最新国产剧情AV原创免费| 四只虎免费永久观看| 亚洲第一福利网站| 亚洲狠狠婷婷综合久久| a毛片免费在线观看| 免费中文熟妇在线影片| 国产成人麻豆亚洲综合无码精品| 亚洲性色高清完整版在线观看| 一级特黄a免费大片| 波多野结衣中文字幕免费视频| 亚洲乱亚洲乱少妇无码| 亚洲欧洲日韩在线电影| 国产99精品一区二区三区免费| 两性刺激生活片免费视频| 青青草原亚洲视频|