Web應用服務器性能壓力測試


  壓力測試需要關注三個方面:如何正確產生壓力、如何定位瓶頸、如何預估系統的承載能力
  產生壓力的方法 通常可以寫腳本產生壓力機器人對服務器進行發包和收包操作,也可以使用現有的工具(像jmeter、 LoadRunner這些),所以說產生壓力其實並不難,難點在於產生的壓力是不是真實地反映了實際用戶的操作場景
  性能問題   TPS、響應時延等性能數據,關注系統的CPU、內存、IO、網絡,對比在tps、時延達到瓶頸時這些系統數據的情況,確定性能問題是系統哪一部分造成的,然后再回到代碼的邏輯中逐個優化這些點。
   性能測試,難點在於你確認要測什么?是壓力測試還是負載測試
  確定測試策略和測試指標。也就是在性能測試中常說的測試場景
  再次確認測試環境,內網,無網絡問題,帶寬足夠,線上,線下服務器配置相同,架構同樣。緩存設置,等等一系列
  工具   簡單的AB WB JM 復雜的LR
  性能測試的實施階段。后續還有調優,復測。。
  5種協議:HTTP、HTTPS、WebSocket、Socket、MQTT
  加密:AES、DES、RSA、MD5、SHA1,自有加密算法包調用
  性能指標:並發用戶數、錯誤率 、吞吐量、每秒點擊數、每秒響應數、事務平均響應時間、每秒事務數、每秒事務總數等
  基礎硬件指標:CPU、內存、磁盤、網絡流量、網絡連接等
  資源細分指標:HTML、圖片、JS、接口等響應時間精確詳細
  性能指標  訪問量,響應速度、容錯能力、運行狀態和響應時間
   微軟Web Application Stress Tool(簡稱 WAST)為例進行一次 Web 壓力測試
  CMD 窗口中使用命令  netstat -an
  用VPS或者獨立服務器搭建網站
  Webbench,Apache Bench,http_load是三款比較流行的網站服務器壓力Web性能測試工具
  (受網絡等各種因素的影響,測試結果不一定很准確)
  apache自帶的工具ab測試.  也可以試試http_load;
  Apache Bench又叫做AB,是Apache 附帶的一個小工具,
  專門用於 HTTP Server 的benchmark testing,ab命令會創建很多的並發訪問線程,模擬多個訪問者同時對某一URL進行訪問,可用來測試Apache的負載壓力,也可以測試nginx、lighthttp、IIS等其它Web服務器的壓力。
  Webbench是由Lionbridge公司開發出來的一個網站壓力測試工具,可用於測試ASP,PHP,JAVA,CGI等服務器壓力,
  也可用於SSL的安全網站的負載能力進行測試,最多可以模擬3萬個並發連接去測試網站的負載能力,
  Webbench操作簡單,一行命令就可以顯示出服務器壓力。
  http_load這是國外一個博主開發的基於linux平台的性能測試工具,主要是以並行復用的方式運行,
  可以用來測試web服務器的吞吐量與負載,測試結果一目了然。Apache Bench,Webbench,http_load這三款網站服務器壓力測試工具還要根據測試者的主機性能來決定參數,防止把測試主機給搞成死機了。
  Siege  開源的壓力測試工具, 根據配置對一個WEB站點進行多用戶的並發訪問,
   記錄每個用戶所有請求過程的相應時間,在一定數量的並發訪問下重復進行


免責聲明!

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



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