閒談壓力測試

當一個網路應用程式完成後,通常會進行壓力測試,所謂壓力測試就是以程式模擬使用者的點擊,對網路應用程式進行相同/不同的動作。創造出高負載,並以此找出 bottleneck 在哪邊。

對於 WebAPP 來說有幾套壓力測試軟體(可做 HTTP 的)非常知名,免費像是 ab, siege, jmeter, 還有 MS 的 Web Application Stress Tool 等等。

一開始我都用 ab 或是 siege 來做,之前也有玩過強大的 jmeter (因為支援 Proxy 側錄動作,對於要進行複雜一連串操作的測試來說,非常有幫助。)

在上述軟體中,最容易上手的大概就是 ab 了!這玩意兒一開始只有在 Linux 下有,不過後來 Apache Software Foundation 非常貼心地準備了 for Win 版本的 Apache ,當然也附帶了 ab.exe 讓 Windows 下的用戶使用。

講了這麼多,不是要和大家分享怎麼用,因為我剛剛找到一篇中文的教學文章,寫的不錯,在這邊貼上他的連結:The Will Will Web – 使用 ApacheBench 進行網站的壓力測試 。如果大家有興趣可以測試看看。

如果覺得那篇文章太長的話,重點其實只有兩個:

  1. 下載 Win32 Binary without crypto (no mod_ssl) (MSI Installer) 並且安裝
  2. 找出 ab.exe
  3. 範例:一次 1000 個連線,並且進行 1000 次,使用 Keep-Alive 方式連線。

有寫好的 WebAPP 不妨進行壓力測試看看,設法找出 performance bottleneck 🙂

Posted in computers

Leave a Reply

Your email address will not be published.