關於並發用戶數的思考-通過PV量換算並發


首先介紹一下pv量:
PV(訪問量):即Page View, 即頁面瀏覽量或點擊量,用戶每次刷新即被計算一次。
UV(獨立訪客):即Unique Visitor,訪問您網站的一台電腦客戶端為一個訪客。00:00-24:00內相同的客戶
端只被計算一次。
IP(獨立IP):即Internet Protocol,指獨立IP數。00:00-24:00內相同IP地址之被計算一次。
***************************
問題:一個系統的日均pv量是8000,那么並發用戶數應該是多少?

1、首先,我覺得應該考察這個系統的業務都有什么,各個之間有什么關聯性。這些PV都分布在哪里業務上。
2、如果這些pv為單一業務,那么還要看用戶在前台的一次操作,會對服務器端產生幾個請求。因為如果網頁中包含圖片、js等內容,用戶一次打開操作,會對服務器產生多個操作。
3、我們假設用戶在前台的一次操作,僅產生一次pv。用戶並發數是指多少用戶同時對服務器產生訪問。對此,我假設了三種訪問情況:
    (1)最差情況:8000個用戶同時發起請求,那么並發用戶數應為8000
    (2)最好情況:8000個用戶在時間上均勻地發起請求。那么並發用戶數為8000/24*60*60=0.093。折合一分鍾內之有5.5個請求,基本上就沒有並發,只是單個執行。
    (3)80~20原則:但是在現實生活中,以上兩種情況發生的概率很小。根據統計學原理,采用80~20原則計算並發用戶數。
             8000*0.8/(8*60*60*0.2)=1.11,即每秒中有兩個用戶並發。
          可能有人會問:為什么是每秒多少個用戶,不是每小時、每分鍾、每毫秒?
          回答:我做一個120人並發查詢的項目,響應時間最小0.047s,最大6.216s,平均0.779s。與服務器的一次業務交互,大約需要1秒鍾。
         個人感覺,以小時、分鍾做單位,時間跨度太長;以毫秒做單位,時間跨度又太短。綜上所述,以秒為單位比較合適。
4、lr設置集合點后,每次迭代中,必須全部(或部分)請求得到回復后,才發起下次迭代。所以在迭代周期內我們只發送了一次並發請求,我們在根據80~20原則計算得出的並發用戶數,還要乘以這個迭代周期。
      例如我的查詢項目中,迭代周期大約為9秒,所以並發用戶數為1.11*9=9.99,最終得到並發用戶數為10個

個人觀點,如有不妥之處,請指正

8000是並發的訪問數,80~20原則是指80%的工作量會集中在20%的時間內完成,所以用戶訪問系統不是平均,而是集中在某一段時間內。0.8是指 取並發量的80%,0.2是指取工作時間的20%,8*60*60是指每天8小時,每小時60分,每分鍾60秒,就是指每天的工作時間折成秒


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM