- Apache Bench 教程
- Apache Bench - 首頁
- Apache Bench - 概述
- Apache Bench - 環境設定
- 測試我們的示例應用程式
- 併發測試多個URL
- 動態頁面測試準備
- 動態頁面的順序測試用例
- 輸出比較
- Apache Bench 有用資源
- Apache Bench - 快速指南
- Apache Bench - 有用資源
- Apache Bench - 討論
Apache Bench - 概述
效能測試已被證明對業務成功至關重要。網站效能低下不僅會導致經濟損失,有時還會導致法律糾紛。
沒有人願意忍受在重要的線上互動(如購物、線上考試、賬單支付等)中出現效能緩慢、不可靠的網站。網際網路如此普及,替代方案範圍極廣。失去客戶比獲得客戶更容易,而效能是關鍵的改變因素。
對負載測試工具的需求
如果我們能夠理解對負載測試工具的需求,這將給我們使用它的理由和動力。一些著名的商業網站在訪問量激增時遭受了嚴重的停機。電子商務網站大量投資廣告活動,但沒有投資負載測試。因此,當營銷帶來流量時,他們未能確保最佳的系統性能。
另一個忽視負載測試的常見例子是 WordPress 網站中的“建立連線錯誤”。因此,在生產環境中部署網站或應用程式之前對其進行負載測試是一個好主意。在進行更詳細的測試之前,快速建立專案的最佳情況是很好的。
什麼是 Apache Bench?
Apache Bench (ab) 是 Apache 組織用於基準測試超文字傳輸協議 (HTTP) Web 伺服器的工具。雖然它旨在衡量 Apache Web 伺服器的效能,但它也可以用於測試任何其他同樣優秀的 Web 伺服器。使用此工具,您可以快速瞭解您的 Web 伺服器每秒能夠處理多少請求。
Apache Bench 的特點
讓我們看看 Apache Bench 的重要功能和侷限性。功能和侷限性如下所示:
作為一個開源軟體,它是免費提供的。
它是一個簡單的命令列計算機程式。
它是一個平臺無關的工具。這意味著它可以在 Linux/Unix 或 Windows 伺服器上同樣有效地呼叫。
它只能對 Web 伺服器(HTTP 或 HTTPS)進行負載和效能測試。
它不可擴充套件。
Apache Bench 僅使用一個作業系統執行緒,而不管併發級別(由 -c 標誌指定)如何。因此,在對高容量伺服器進行基準測試時,單個 Apache Bench 例項本身可能成為瓶頸。為了完全飽和目標 URL,如果您的伺服器具有多個處理器核心,最好並行使用其他 Apache Bench 例項。
注意事項
您需要注意的是,Apache Bench 中沒有指令可以在執行測試時以特定間隔增加併發性。因此,使用 ab 執行負載測試相當於拒絕服務 (DOS) 攻擊。如果您要長時間進行大量負載測試,建議您告知並事先獲得您的 VPS 服務提供商的許可。他們會為您分配適當的時間間隔或將您的節點轉移到負載測試任務。
其次,如果您只是為了學習 Apache Bench 而長時間連續測試第三方的網站(您的 VPS 成為測試節點),則存在您的 VPS 公共 IP 地址被第三方網站永久阻止的可能性。在這種情況下,您將無法使用相同的 IP 地址連線到該網站。但是,如果您確實希望將來連線到該網站,唯一的解決方案是與目標網站的系統管理員聯絡,或在您的 VPS 服務提供商的幫助下建立一個具有不同 IP 地址的新伺服器例項。
在警告您之後,請讓我向您保證,本教程中的所有測試都足夠安全,並且超出了系統管理員通常所說的“系統濫用”行為。