參考:https://en.wikipedia.org/wiki/Little%27s_law(周末看一下)
最近在做性能壓力測試,開始時,壓力壓不上去,參考:
N = X * E[T] ,N就是你的壓力器線程數*IODepth,X是IOPS ,E[T]是平均處理時間
壓不上去兩個原因 1. N太小 2. E[T]太大
Little's Law 是有廣泛應用的超級簡潔的數學規律。
強調三點:廣泛應用,超級簡潔,數學規律。
(1)廣泛應用:不知道題主是不是讀工業工程相關網站書籍看到的這個little's law。用“庫存”,“產出”,“流程”這些術語描述的 "Little's Law" 頂多只能說是 Little's Law 在生產庫存管理里面的應用(如果你說其他很多領域的問題也能被建模理解成庫存管理,說明你早就學通了,我過慮了)。
Little's Law 是排隊論里面的理論,只要現實問題中有排隊的結構就可以考慮應用Little's Law。這里說的排隊不一定要滿足任何像先進先出或者先進后出的規則,隊伍還不一定需要有順序,關鍵是有一個系統(或者叫成空間也行)能容納個體,個體有進有出就行。例如說
1. 產品排隊進庫存。排隊論在庫存管理里頭的應用。
2. 顧客到百貨商場買商品。百貨商場是系統,顧客是個體。
3. 網民進入google網站,然后點鏈接離開。google這個網站是系統,網名是個體。
4. 我們回復email。郵箱是系統,郵件是個體,收到郵件表示郵件進入,我們回了郵件表示郵件離開。
5. 孕婦住院。醫院是系統,孕婦是個體,准備要生的時候進入醫院。生完休息護理完畢離開。
6. 中介賣樓。中介是系統,要賣樓的單子進入系統,樓被買掉了或者不賣了單子離開。
還有很多很多的,反正滿足條件就是了。(這里講到的只是應用領域廣泛,還有另一個層次的應用廣泛,我放到(2)里面講。)
一個規律能用到這么多地方必須牛。更牛的是它很簡潔,不是專家才懂,懂乘除法的任何人都能用。
(2)超級簡潔。
簡潔到什么程度?如果不提前提條件,這個定律就只需要四個符號字母: L = λW。跟牛頓第二定律的 F=ma 並列,但是有時比“牛二”還牛,會在“數學規律”那一段里面解釋。
完整的 Little's Law 是這樣的:一個排隊系統在穩定狀態下,在系統里面的個體的數量的平均值 L, 等於平均個體到達率 λ (單位是 個每單位時間)乘以 個體的平均逗留時間W。
這個定律需要注意兩個點:
1. 穩定狀態。可以直觀理解成系統的狀態在均值上或者說在某個時間點開始不怎么變了,每段時間的平均個體數目不會忽大忽小,每段時間的到達率的平均值不會忽高忽低,平均逗留時間不會忽長忽短。
2. 里面說的平均是長期時間上的平均。個體總數平均值就是一段時間里面個體的總數除以這段時間長度。
穩定狀態保證平均值的存在。各種工業系統一般都處於穩定狀態的。
這個 L = λW 的公式是可以用在每次排隊系統的實現上的。意思是說,例如假如我們只要研究今天的乘客在某百貨商場的情況,那就只需要看今天的各種平均值,不需要研究好幾個月的情況。每一天就是百貨商場這個系統的一次實現。
可是,也許你會說 套個公式還要穩定狀態,系統穩不穩定天知道。來商場的人數每個時間段都不一樣,怎么看都不像穩定的吧!事實上, 不穩定也可以套!只要滿足兩個條件:
1. 開始和結束的時候系統是空的。
2. 個體不會憑空消失。
這兩個條件很容易滿足的,有跟沒有差不多。商場開和關的時候自然沒顧客,顧客也不會無端端蒸發。
一個規律應用得廣泛的本質是前提條件少。Little's Law 只跟三個平均值有關系,而並不需要知道
(3)數學規律
Little's law 是一個數學定理,只要滿足前提條件 L = λW 就一定是對的,因為每一步都是通過嚴格數學推理的。牛頓第二定律也很牛,但是那不是數學規律。牛二是個物理規律,本質上是個經驗公式,F=ma 是要通過測量F,m 和 a 來再通過統計驗證的。只不過在我們生活的世界里,公式誤差爆小,就直接當等式用了。在這種意義上, Little's law 比“牛二”還牛。
總結一下 Little's Law 的牛逼之處:
1. 應用領域廣
2. 應用條件簡單,大多排隊系統都用得上
3. 形式簡單
4. 靠譜