Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

不知道大家有沒有線上搶演唱會門票,結果一開賣打開網頁結果網站因為人數太多,最後大家都買不到票的經驗?這就是網站突然接受到太多訪客,主機或是頻寬不夠,造成訪客無法正常瀏覽網頁,跟這些網站公司相比,虛擬主機的主機性能更是有限,你想知道你的主機能承受多少訪客嗎?

為什麼要做壓力測試?

對網站進行壓力測試的目的是了解網站在正常運作下,可以承受的訪客人數,以免當服務或網站上線才發現流量超過預期,主機的性能無法負荷,反而錯失商業機會,像最近館長花花了330萬元的網站,剛啟用就被灌爆,就是一個沒做好壓力測試而損失數千萬商機的例子。

Loader.io 是什麼?

Loader.io 是由 SendGrid 所提供的一項網站壓力測試工具,可以對你的主機進行壓力測試,讓你了解你的主機同時間可以承受多少的訪客,尤其是特定活動的網頁,為了要因應活動而瞬間湧入的流量對主機來說不是件容易的事情。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

Loader.io 簡易教學

Loader.io 本身有以下四種收費方式:

  • Free
  • Starter
  • Pro
  • Each paid plan includes

如果是普通使用者,使用 Free 方案就夠用了,可以測試一個主機、一次一分鐘、兩個網址,網址可以更換,所以除非想要了解更多訊息,應該是沒有必要成為付費會員。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量
首頁只會看到三種方案,但是當註冊之後會出現 Starter 方案可以選擇

點下 Sign Up Now,輸入 Company、E-mail 與 Password,再到信箱完成驗證即可使用。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

建立目標主機(Target Host)

開通帳號之後,首先我們要做的是建立主機,免費版中只能建立一個主機。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

說是主機,但是實際上就是你的網域名稱,不需要加入 Http:// 或是 Https://。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

如何驗證主機所有權

在進行壓力測試之前,你必須要完成驗證,確定你是該網站的所有人,否則,在壓力測試時導入的瞬間流量其實就跟網路攻擊 DDoS 一樣,量大的話也是會造成網站癱瘓,驗證的方法也很簡單,只要下載 Loader 提供的 TXT 文件,然後上傳到根目錄,就可以完成驗證。

如果你是付費會員,也可以用加入 DNS 的 TXT 紀錄來完成驗證。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

完成檔案上傳後,按下 Verify 確認,沒有問題的話畫面會出現 “Congrats, target verification passed! Now you can create your first test! ” 接下來就可以按下”New Test”開始建立測試了。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

建立 Loader.io 壓力測試

第一次使用,網站會有一些操作說明,先點下 Create your firest test 開始第一次的設定。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

在測試中,Name 是測試的名稱,還可以在 Notes 中作一些紀錄,其中的 Test type 有以下三種測試方式可以選擇:

  • Clients Per Test:每次測試的連線數
  • Clients Per Seconds:每秒的連線數
  • Maintain Client Load:累積連線數

其中的 Clients Per Test 與 Clients Per Seconds 其實功能差不多,只是一個是定義訪客總量,一個是定義每秒訪客數,所以說在時間固定的情況下,兩者測試出來的結果應該是大同小異的,但是 Maintain Client Load 模式的話,訪客數會不斷累積直到測試時間結束或是系統無法負荷為止,所以你如果想要知道你的網站可以承受的流量極限就可以試試看 Maintain Client Load 。

最下面的 Client Requests 可以設定細部的連線方式,沒有什麼特別要求的話,按照原本設定就可以了。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

查看 Loader.io 壓力測試結果

免費版只提供最常1分鐘的測試結果,所以很快就可以完成,同時間你就可以看到及時的主機連線狀況,左側還有顯示測試的趨勢。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

在 Time 中,可以看到訪客數量與主機連線時間之間的關係,很明顯同一時間內人數越多,主機回應的時間也越來越長。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

在 details 分頁中可以看到發送請求成功的數據。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

Bandwidth 可以看到網站流量的狀況。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

Distribution 可以查看訪客的響應時間分布,但是那是付費會員才能看到的,在這裡就沒辦法給大家看了。

如果你的測試強度已經超過主機能力,就會跑出 error 提醒。

Loader.io | 測試一下你的主機到底可以承受多大的瞬間流量

結語

Loader 是一個非常簡易的壓力測試工具,操作簡易而且人性化,但是不要以為壓力測試就只有這個樣子而已,對於大型的網站來說,任何一個環節都會是影響網站速度的因子之一,要是深究起來也是一門很深的學問,Loader 只是讓你快速的知道自己主機的性能大致上的狀況,如果你要架設大型網站或是電商網站,在上線前還是最好請專業的公司來處理比較好。