我正在研究性能測試,想問問爲什麼緩慢增加,然後在最大負載下運行,然後緩慢下降被認爲是一個更好的範例。測試團隊花費大量時間爲相同的完美圖形。 儘管它是完全主觀的,但與一次啓動所有線程相比,爲什麼這種方法總是首選。爲什麼增量加載和增加線程被認爲是最佳實踐?
0
A
回答
1
立即啓動所有線程(或者更準確地說,從零流量到瞬間流量最大化)將會「震撼」目標系統,並且可能會導致某些Web加速功能無用。例如,如果所有客戶端一次啓動,則服務器和客戶端上的緩存最初可能不會發生。如果緩慢上升,緩存可以填充,一旦達到最大流量/ VU,緩存未命中可能很少。
應用程序還需要增加它們用於服務大量客戶端的資源量 - 分配內存,文件描述符等 - 如果您立即從0到1,000,000個客戶端,服務器端將擁有大量的即時資源分配工作,而如果你慢慢增加,資源分配將不成問題。
如果您正在運行某種自動縮放,這當然也是一個問題 - 不切實際的快速上升時間會使自動縮放難以跟上,因此導致目標系統出現問題它不會在真實情況下體驗。
有些情況下,從0到最大的VUs /流量確實有意義,那就是當你期望這種事情發生在你的網站。您可能正在測試自己承受拒絕服務攻擊的能力,或者您可能運行的網站會遇到極其突發的流量(例如,在線拍賣網站或可能是在特定時間發佈受歡迎活動門票的活動網站)。
相關問題
- 1. Javascript追加;什麼被認爲是最佳實踐?
- 2. ETL增量提取最佳實踐
- 3. Spring MVC和ORM延遲加載的最佳實踐是什麼?
- 4. Verilog最佳實踐 - 增加一個變量
- 5. jQuery加載最佳實踐
- 6. 爲什麼-Xss不增加創建的線程數量?
- 7. 增加鎖的數量的最佳方法是什麼?
- 8. 什麼是添加增量遞減函數的最佳方式
- 9. Java後增加和預增量行爲
- 10. 在Backbone Marionette中加載數據的最佳實踐是什麼?
- 11. 爲什麼我的變量不增加?
- 12. 爲什麼不增加對象變量?
- 13. 爲什麼retainCount增加?
- 14. 爲什麼不會增加?
- 15. 爲什麼隨着線程數量的增加,我的多線程示例中的時間不斷增加
- 16. 什麼被認爲是測試akka語義競賽條件的「最佳實踐」?
- 17. 增加DIV作爲其含量增加
- 18. iOS最佳實踐爲應用程序預加載數據
- 19. 哪種方法會被認爲是最佳實踐?
- 20. 最佳實踐進行同步增加已刪除項目
- 21. 存儲增量下載數據的最佳方式是什麼?
- 22. 增加值它被稱爲
- 23. 爲什麼ENLIST = TRUE會增加oracle會話的最大數量?
- 24. 什麼是動態加載<script>和CSS Reactjs的最佳實踐
- 25. 爲什麼按照預增量實現後增量?
- 26. 多線程最佳實踐
- 27. 多線程最佳實踐
- 28. Delphi線程最佳實踐
- 29. 什麼時候加載部分視圖的MVC最佳實踐
- 30. 爲線串增加密度
用戶是混亂的功能。請參閱James Gleick的書,「混沌,製造新科學」。它將永遠改變你對負載建模的看法。 System Shock同樣也被稱爲伏特加和Teetotaler問題。一次性移除負載被稱爲冷火雞癮問題。 –