Loader.io 教學:免費網站壓力測試與判讀

Loader.io 是線上網站壓力測試平台,免費版含 1 個目標主機、每次 10,000 clients、1 分鐘與 2 個 URL。本文整理驗證、模式與結果判讀。

用 AI 摘要這篇文章:

Loader.io 是線上網站壓力測試平台,可對你擁有或獲准測試的網站與 API 模擬大量連線。免費版目前包含 1 個目標主機、每次最多 10,000 clients、1 分鐘與 2 個 URL;開始前必須用檔案驗證主機所有權。

壓力測試會製造真實負載。只測自己的系統或已取得書面授權的環境,先設定停止門檻、監控與回復方案,不要對第三方網站「試跑」。

Loader.io 免費版與 Pro 差異

Loader.io 官方方案頁,Free 為每月 0 美元;Pro 目前是每月 99.95 美元,提供 100,000 clients、無限目標主機、10 分鐘測試、每次 10 個 URL、DNS 驗證與進階分析。官方也說明測試流量目前由 Amazon US-east 資料中心發出,亞洲網站的網路延遲不能直接當成本地使用者體驗。

項目FreePro
clients/test10,000100,000
目標主機1不限
時間1 分鐘10 分鐘
URL/test210
DNS 驗證

如何驗證目標主機

  1. 新增網域或 IP;非標準連接埠才需要把 port 一起填入。
  2. 下載 Loader.io 產生的驗證檔,檔名與內容都要保留 token。
  3. 把檔案放在網站根目錄,確保公開網址直接回傳該 token,不要轉址或要求登入。
  4. 回到 Loader.io 點 Verify。
  5. 測試期間不要移除驗證;完成後依你的安全政策決定是否保留。

網站使用 Cloudflare、防火牆或 DDoS 防護時,測試流量可能被擋住;先依官方 API 查目前 load generator IP,再做最小範圍 allow-list。若不熟悉 DNS 與防火牆,可先閱讀 Cloudflare 設定指南,避免為了測試關掉整站防護。

三種壓力測試模式怎麼選

  • Clients per test:把總 clients 平均分布在測試期間,適合看固定總請求量。
  • Clients per second:每秒啟動指定 clients,適合測每秒進站或 API 請求。
  • Maintain client load:clients 會持續重複請求,並可從低負載逐步升到目標值,壓力通常最高。

第一次不要直接填 10,000。先用低流量建立基準,再以小幅度升載;每一階段都看 CPU、記憶體、資料庫連線、快取命中率、錯誤率與回應時間。測單一頁面速度可先用 網站速度測試工具,它和多使用者壓力測試的目的不同。

結果要看哪些指標

指標判讀
Response time觀察負載上升時的趨勢,不只看平均值
4xx可能是限流、驗證、路由或請求本身錯誤
5xx查看應用、反向代理與資料庫日誌
Timeoutclient 在門檻內沒收到資料,不一定等同伺服器 timeout
Network error檢查 DNS、TCP、TLS、防火牆與連接埠
Bandwidth回應內容太大時,網路可能先成為瓶頸

常見問題

免费 CC 压测可以用 Loader.io 嗎?
若「CC」指用大量請求攻擊或干擾第三方,不能使用。Loader.io 只應用於自有或獲准環境的合法負載測試。

Loader.io 能測前端 Core Web Vitals 嗎?
不能直接取代真實瀏覽器測試。它主要產生 HTTP 負載;LCP、INP 等仍要用瀏覽器與實際使用者資料觀察。

測試結果差就一定要升級主機嗎?
不一定。先看資料庫慢查詢、快取、第三方 API、連線池、程式錯誤與頻寬,再決定優化或擴容。

Sliven 褚崇名
Sliven 褚崇名

每日分享科技新知、免費資源以及 WordPress、虛擬主機相關主題,任何問題歡迎在科技月球下方留言,或是發送 Email 至 [email protected] 與我聯繫。

文章: 935

5 則留言

  1. 你好,
    測試結果上方出現「This test was aborted because it reached the error threshold.」
    請問這樣是不是沒有成功完成測試?
    像下面這張圖片中這樣:
    https://upload.cc/i1/2021/06/27/Dl5eKL.png

    不曉得是不是主機無法負荷?
    所以改成「Clients per test」,Clients:20,Duration:1分鐘,一樣出現那段錯誤訊息,不曉得該如何?

    • Hi 饅頭,

      根據你所提供的資訊來看,比較有可能的的原因是,你可能正在使用 CloudFlare 作為你的 DNS 服務,同時你開啟了防火牆當中的「機器人」模式,因此 Cloudflare 可能會將 Loader.io 所發送的流量測試視為是機器人攻擊而幫你進行阻擋。

      這個錯誤的原因是源自於當 Loader.io 在發送測試流量後,接收到錯誤的訊息達到某一個上限值後,就會停止並返回該錯誤提示。

      你可以按照上述的方式測試看看,看看是否有開啟機器人對抗功能,應該能正常測試。

  2. 如果有用 Cloudflare 的話,測試太多次會被當成 DDoS 降低響應速度嗎? 因為我用 Maintain client load 10000 到 10000 一分鐘第一次是 288ms,第二次就變成 5082ms @@

    • Hi Luyxeon,
      用 Cloudflare 的話應該不會被當作 DDoS 攻擊,我本身也有使用 Cloudflare,在測試時沒有出現問題。
      Cloudflare 若遇到普通的 DDoS 攻擊,首先會出現阻擋的畫面,會要求該 IP 在訪問網站前,先進行機器人驗證,所以實際上不會對網站產生實際流量。
      您所遇到的情況,應該是因為,主機在短期間內受到龐大的流量進入,由於主機規格無法承受,因此導致 CPU 與記憶體負載過高,會產生後續進入的流量無法取得正確的回應。
      這個測試流量的網站就是為了測試這樣的情況,讓網站所有者模擬這種短時間大量的流量進入時,主機是否能夠有能力承受,以及該如何解決這個問題。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


Share to...