Mongodb

關閉 MongoDB 死連接

  • January 23, 2022

我有一個腳本可以連接到我的本地 mongos 並進行一些處理。但是,在此過程中,我遇到了許多游標超時異常,這(我懷疑)在我的伺服器上留下了許多死連接。

當我mongostat在主機上執行時,我看到 450 多個連接:

insert  query update delete getmore command  vsize    res faults  netIn netOut  conn repl       time 
    0      0      0      0       0       1   977m   195m      0    62b   726b   458  RTR   02:11:07 
    0      0      0      0       0       1   977m   195m      0    62b   726b   458  RTR   02:11:08 
    0      0      0      0       0       1   977m   195m      0    62b   726b   458  RTR   02:11:09 
    0      0      0      0       0       1   977m   195m      0    62b   726b   458  RTR   02:11:10 

如何確保這些是我應該釋放的空閒資源?如果是,我怎樣才能釋放它們?

這應該以程式方式處理。程序員在完成 dB 訪問時必須關閉連接,否則可能會發生記憶體洩漏。

我不確定如何以管理員身份殺死這些程序。

建立一個連接需要很長時間,所以除非你有數千個連接和一周的伺服器,否則你應該保持它們打開。

要管理打開的空閒連接的數量,您應該更改應用程序連接池的配置以保持更少的打開連接 - 但如上所述,它會帶來性能損失。

引用自:https://dba.stackexchange.com/questions/121407