現(xiàn)在lvs的最大并發(fā)連接數(shù)大概是多少?
IPVS連接哈希表大小,取值范圍是:[12,20]。
該表用于記錄每個傳入連接和路由目的地的信息。連接哈希表要容納幾百萬個并發(fā)連接,有消息到達就要找到連接哈希表。哈希表的搜索復雜度為O(n/m),其中n是哈希表中對象的數(shù)量,m是哈希表中桶的數(shù)量。當對象均勻分布在哈希表中,并且哈希表中桶的數(shù)量與對象的數(shù)量一樣大時,哈希表的搜索復雜度可以接近O(1)。在連接跟蹤表中,每一行稱為一個哈希桶,桶的個數(shù)為固定值CONFIG_IP_VS_TAB_BITS,默認值為12(2的12次方,4096)。這個值可以調(diào)整,這個值的大小應該在8到20之間。具體調(diào)整方法見下。每一行都是一個鏈表結(jié)構(gòu),包含n列(即n個連接的記錄)。這個N是無限的,N的個數(shù)決定了搜索的速度。在LVS的實現(xiàn)描述中,有一段話可以幫助理解行和列之間的關系:為了評估哈希函數(shù)的效率,我們從一個運行IPVS的真實站點中抽取了一個當前連接的樣本,它包含了總共35652個并發(fā)連接。在64K桶的哈希表中,連接的分布如下:桶長(Lj)5164126398025614120900搜索一次所有連接的代價是45122,搜索每個連接的平均代價是1.266(即45122/35652)。LVS的調(diào)優(yōu)建議將哈希表的值設置為不小于并發(fā)連接數(shù)。例如,如果并發(fā)連接數(shù)為200,持久時間為200S,那么哈希桶的數(shù)量應該設置為盡可能接近200x20040000,2的15次方為32768。當ip_vs_conn_tab_bits20時,哈希表的大小(條目)為pow(2,20),即1048576。對于64位系統(tǒng),IPVS占用內(nèi)存約16M,通過配置的d:連接哈希表可以看出(大小1048576,內(nèi)存16384kb)。對于目前的服務器來說,這樣的內(nèi)存占用不是問題。所以就設為20吧。關于最大"連接限制和:此處的哈希桶數(shù)量不是LVS的最大連接限制。LVS使用哈希鏈表來解決"哈希和與,當連接數(shù)大于該值時,必然會出現(xiàn)哈希,會(略微)降低性能,但在功能上不會影響LVS。
性能指標之間的關系?
性能測試各項指標之間的關系
每站終端數(shù)(terminalsperstation的縮寫)
壓力測試工具中的線程和TPS數(shù)量與服務器上的線程和TPS數(shù)量并不完全相等。在具體的項目性能測試過程中,要盡可能的關注服務器能夠處理的請求數(shù)量,也就是關注服務器上的TPS。
被...復雜化
建議性能測試不要總是說系統(tǒng)能支持多少并發(fā)。這個瞬間的概念可以不能很好的衡量系統(tǒng)性能,不如用TPS來達到和諧。
并發(fā)數(shù)和TPS
有50個并發(fā)線程,每個線程一秒鐘可以完成100個事務,所以TPS5000。
在線用戶評估
在很多業(yè)務中,并發(fā)度會小于5%,甚至小于1%。假設5%的并發(fā)性和100w用戶,計算:
TPS100wx000
根據(jù)TPS估計并發(fā)線程的數(shù)量
如果此時響應時間為10ms,那么很明顯理論上并發(fā)線程數(shù)為50000TPS/(1000ms/10ms)5000(響應時間是波動的,所以是理論值)。
測量機器和線程的數(shù)量
運行壓力測試工具的機器可以啟動的線程數(shù)與其硬件有關,所以使用的線程數(shù)必須合理,壓力測試的機器要納入壓力測試的監(jiān)控范圍。