ActiveConn是活動鏈接數,也就是tcp鏈接狀態的ESTABLISHED;
查看:ipvsadm -L --timeouthtml
設置:ipvsadm --set 5 10 300nginx
InActConn是指除了ESTABLISHED之外的,全部的其它狀態的tcp鏈接.
那既然這樣,爲何從lvs裏看的ActiveConn會比在真實機上經過netstats看到的ESTABLISHED高不少呢?
原來lvs自身也有一個默認超時時間.能夠用ipvsadm -L --timeout查看,默認是900 120 300,分別是TCP TCPFIN UDP的時間.也就是說一條tcp的鏈接通過lvs後,lvs會把這臺記錄保存15分鐘,而無論這條鏈接是否是已經失效!因此若是你的服務器在15分鐘以 內有大量的併發請求連進來的時候,你就會看到這個數值直線上升.
咱們看lvs的這個鏈接數是想知道如今的每臺機器的真實鏈接數吧?怎麼樣作到這一點呢?其實知道如今的ActiveConn是怎樣產生的,作到這一點就簡 單了.舉個例子:好比你的lvs是用來負載網站,用的模式是dr,後臺的web server用的nginx.這時候一條請求過來,在程序沒有問題的狀況下,一條鏈接最多也就五秒就斷開了.這時候你能夠這樣設置:ipvsadm --set 5 10 300.設置tcp鏈接只保持5秒中.若是如今ActiveConn很高你會發現這個數值會很快降下來,直到降到和你用nginx的status看當前連 接數的時候差很少.你能夠繼續增長或者減少5這個數值,直到真實機的status鏈接數和lvs裏的ActiveConn一致.
來源:http://www.a8z8.com/article-7276-1.html