搜尋

首頁  >  問答  >  主體

mongodb的參數理解

問大神,對於mongodb以下幾個參數我的理解對不對?

maxWaitTime=120000 是指已經連接到mongodb,正在等待資料返回,這個等待的時間

connectTimeout=10000 是指請求mongodb連接,還沒有連接上,正在等待連接的時間

socketTimeout=0 是指已經連接上了,正在傳輸數據,傳輸數據過程中會有耗時,這裡就是等數據傳遞結束的等待時間

習慣沉默習慣沉默2777 天前933

全部回覆(2)我來回復

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-17 10:04:52

    Stackoverflow上有一個有140次讚的答案:如何設定 MongoDB Java 驅動程式 MongoOptions 供生產使用?

    • 連接超時。顧名思義,驅動程式在連線嘗試中止之前將等待的毫秒數。將超時設定為較長的時間(15-30 秒),除非存在實際的預期機會,否則這將妨礙成功的連線嘗試。通常,如果連線嘗試花費的時間超過幾秒鐘,您的網路基礎架構就無法實現高吞吐量。

    • 最大等待時間。執行緒將等待連線池中的連線變得可用的毫秒數,如果未及時發生,則會引發例外狀況。保持預設。

    • socketTimeout。標準套接字超時值。設定為 60 秒 (60000).

    回覆
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-17 10:04:52

    補充說明如下:

    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!

    回覆
    0
  • 取消回覆