對於定義而言其實並無特別準確的說法,下面展現幾家的說法。算法
百度解釋:併發主要是針對服務器而言,是否併發的關鍵是看用戶操做是否對服務器產生了影響。所以,併發用戶數量的正確理解爲:在同一時刻與服務器進行了交互的在線用戶數量。這些用戶的最大特徵是和服務器產生了交互,這種交互既能夠是單向的傳輸數據,也能夠是雙向的傳送數據。數據庫
維基百科解釋:一個系統的容量也能夠被測量的最大併發用戶,在這一點系統的性能開始明顯降低。服務器
Loaderrunner:(通過調查虛擬用戶和併發用戶是有區別的)併發用戶數是指現實系統中操做業務的用戶,在性能測試工具中,通常稱爲虛擬用戶數(Virutal User)。併發用戶數和註冊用戶數、在線用戶數的概念不一樣,併發用戶數必定會對服務器產生壓力的,而在線用戶數只是 」掛」 在系統上,對服務器不產生壓力,註冊用戶數通常指的是數據庫中存在的用戶數。session
若是說使用的話Loaderrunner就是一個標準了。雖然解釋不一樣。可是思想解釋你們都是相同的,重點都在真實對服務器產生壓力,可是思考的維度不一樣時,有的從點擊出發有的從時間出發,結果也有不一樣。併發
網上基本就是兩種計算方法。 工具
1.計算平均的併發用戶數: C = nL/T性能
C是平均的併發用戶數;n是login session的數量;L是login session的平均長度;T指考察的時間段長度。(因爲一我的一個時間只能觸發一個請求,login session時間就等同訪問時間)測試
2.根據2-8法則進行估算高峯期的使用人數(20%的時間發生80%的業務)spa
併發用戶數是一個和業務訪問相關的指標,因此並無通用的計算方法。第一種算法寫帖子的人不少,可是明顯都是抄的一家的,連舉例都是同樣的,實在無法認爲他是個標準。可是在某些特定的狀況下,這個計算也是沒有問題的。從時間的角度看壓力也是一種方法。這個算法有效的前提就是T的取值是小於訪問一個請求的處理時間的。以Loaderrunner爲例,咱們設置50個虛擬用戶就表示有50個併發用戶,因爲他自己是個壓測工具,壓測的一個要素就是壓測的應用,可能壓測不一樣的URL,結果也不同。並且壓測的重點是看服務器的承載量。當壓垮服務器時,只能說這個服務器最多能接受xxx個用戶同時訪問xxx這個請求。一樣看承載量,若是T的時間大於訪問的時間話,併發用戶數就會被平均。這個數據顯示承載量也就不許了。第二個算法就有點強行套2-8法則,暫時看不出科學的解釋。io
影響併發用戶數的條件因素太多了,因此光看他也不能客觀的展現什麼問題,通常都結合TPS,若是是TPS只要是有請求過來他就會漲,當請求處理不過來的時候他還在漲,可是併發用戶數卻和請求了的請求相關,對於在等待處理的並不關心。做爲監控指標,結合TPS以及併發用戶數才能可靠的看出服務器的承載。