如何僅透過在瀏覽器上按 F5 來避免出現 90 CPU 負載?

如何僅透過在瀏覽器上按 F5 來避免出現 90 CPU 負載?

我有一個 php 網站,如果我在瀏覽器上按 F5,我會得到以下 CPU 負載:

$ w 11:34:54 向上 16 天,1 分鐘,5 位用戶, 平均負荷:90,81, 32,02, 12,57

它來自我網站上的每個頁面!所以我相信它不是來自演算法而是來自 apache 配置?我對此不太確定。

我使用 PHP(帶有 codeigniter),帶有單一連接的 mongoDB。我使用全域常數來使用我的連接並每次都重複使用它。我不會對每個請求建立新的連線。幾乎所有網頁的回應時間都在 300 毫秒以內。

那麼它是來自 apache (然後我在正確的 stackechange 網站上問我的問題),還是來自我的全域 PHP 連線(然後我將切換到 stackoverflow)。

還是它來自其他參數?如果它來自apache,有沒有辦法限制同時連線的數量?因為在不等待第一個請求完成的情況下一遍又一遍地加載同一頁面不是正確的行為。

所以有人只需按 F5 就可以關閉我的伺服器...如果是 DDOS 就可以,但「只是」DOS...

感謝您,

A。

答案1

您可以嘗試以下模組

  • mod_evasive(Apache 的拒絕服務規避模組)
  • mod_limitipconn(Apache的同時連線數限制模組)
  • mod_cband(提供 Apache 2 模組來解決限制使用者和虛擬主機頻寬使用的問題。)

也可能有用

還有一件事。您可以在apache後面設定nginx,因為它具有非常靈活的速率限制功能

相關內容