【轉】QPS和併發數的關係

立志做一个好的程序员發表於2024-03-12

原文: https://www.cnblogs.com/ooo0/p/15963700.html

--------------------

QPS: 請求進入的速度

併發數: 系統中同時存在的請求數

根據Little's Law,我們能得到如下的關係式:

併發數 = QPS * 耗時

以大學招生為例:大一新生的招收速度是5000人/年,每個學生在大學停留4年,整個大學的人數是20000,於是(下面的QPS改為以年為單位):

QPS 耗時 併發數
5000人/年 4年 20000人


以某公司為例:180000員工,必須早上8:30-9:00之間在考勤系統簽到,每次簽到在系統需要停留0.1秒,於是:

QPS 耗時 併發數
100人/秒 0.1秒 10人


以動物園為例:每秒有1個人進入動物園,每個人在動物園中停留2小時,於是:

QPS 耗時 併發數
1人/秒 2*3600秒 7200人


假設在理想情況下,某系統的請求進入速度是1億次/秒,系統處理的時間趨近為0,那麼這個系統的併發量是多少呢?很顯然:

QPS 耗時 併發數
1億次/秒 趨近0 趨近0次

可見,雖然每秒有1億次請求,但在某一隨機時刻觀察系統,會發現系統中不存在請求堆積的問題,系統的併發數趨近0.這是一個高QPS、低延時系統,是一個很好的系統,輕輕鬆鬆地快速處理各種請求,來一個滅一個。值得一提的是,此時併發數很低,但這不表明系統實際能夠承受的併發數很低,它實際上可能承受很高的併發數。

相關文章