你中午去「海底撈」吃飯。
我們可以把「海底撈」這個酒樓看成乙個被測系統。
你去吃飯,就是對這個被測系統發起請求,對這個系統造成了一定的負載。你帶去的人越多,那麼這個餐館就越繁忙,可以說餐館承受的負載就越大。
你開始點菜。這個時候你隔壁桌的人也開始點菜。那麼你們兩個對這個系統產生了併發的請求。同時,其他桌有的在吃菜,有的在等菜,這些都是併發進行的事務。乙個完整的吃飯事務可以定義成包括:點菜,下單,上菜,買單四個步驟。對於乙個c/s的系統來說,可以對應於:建立連線,傳送請求,接受應答,斷開連線。
影響乙個餐館生意好壞的乙個重要原因是上菜速度。上菜速度體現在兩個方面:
1.乙個顧客請求的處理耗時,從下單到上菜中間等待的時間,我們稱之為響應時間。
2.這個餐館同時為多名顧客上菜的頻率,我們稱之為吞吐量。
很多因素會影響上菜速度,比如服務員的個數、廚師的個數。對於乙個c/s的系統,服務員相當於是接入層,廚師相當於是後台服務。假如服務員太少,下單很慢,後面的廚師都閒著,那麼上菜速度也快不了;假如服務員夠多,下單足夠快,但是廚師太少,下的單來不及做,同樣上菜速度也很慢;如果服務員很多,廚師也很多,但是來的客人很少,那麼大部分的服務員和廚師都閒著,資源全部浪費掉了。因此,接入層和後台服務程序個數、以及資源配比,都是需要根據實際情況進行調優的。
來多少顧客,這是酒樓自己無法控制的,但是酒樓的上菜速度、餐位多少都會制約客流量。一定有乙個峰值客流量,當來的客人超過了這個峰值,那麼這些客人就會等位,或者是上菜速度超慢讓客人無法容忍。容量測試就是通過工具模擬足夠多的顧客來吃飯的事務,希望找到這樣乙個客流量對酒樓產生一定的負載,這個時候酒樓既能接待最多的客戶同時也能保證最短的等待時間。更多的,還可以對這個酒樓人員配置和餐位設定等進行調優,以期達到乙個最理想的資源利用率和效率。
客流量跟進來的客人多少有關,也跟餐館的接待能力有關。單方面增加來就餐的顧客,遭到投訴的可能性就越大,上錯菜的可能性也越大。
node開啟服務的兩種方法
一 第一種方式使用koa框架 koa框架 是乙個簡單好用,特點 優雅,簡單表達能力強,自由度高 所有功能都通過外掛程式實現,很符合 unix 哲學 response.setheader name,value 例如 res.setheader content type text html charse...
Python3建立乙個trie的兩種方法
trie即字首樹或字典樹,利用字串公共字首降低搜尋時間。速度為o k k為輸入的字串長度。1.採用defaultdict建立trie from collections import defaultdict from functools import reduce trienode lambda de...
kafka徹底刪除topic的兩種方法
方法一 快速配置刪除法 注意 如果kafka啟動之前沒有配置delete.topic.enable true,topic只會標記為marked for deletion,加上配置,重啟kafka,之前的topick就真正刪除了。啟動bin zkcli.sh ls brokers topics rmr...