首頁  >  問答  >  主體

Laravel - 部署後 CPU 使用率過高

我在部署 Laravel 應用程式時遇到嚴重問題。這是一個新聞網站,沒什麼複雜的。整個主頁以純 HTML 形式快取在 Redis 中,查詢結果也儲存在 Redis 中,因此 MySQL 的使用量非常小。應用程式功能齊全,因此我們決定在晚上在生產環境中進行測試。部署後,我們注意到所有 12 個核心的 CPU 使用率都躍升至 90-100%,因此應用程式運行速度非常慢或根本不運行。大約有 400 個用戶,每秒 17-20 個請求。

我們嘗試更改伺服器設定(例如 PHP-FPM),但沒有成功。我們使用 Apache Benchmark 進行了一些測試,結果表明,10 個同時使用者的 CPU 使用率約為 80-100%。接下來,我們使用乾淨的 Laravel(沒有我們的應用程式)重複測試,結果相似。

我們使用什麼:

我們注意到 Nginx 快取可以減少 Wordpress 或 Drupal 等應用程式中的 CPU 使用率。但我認為 Laravel 不使用它。 Laravel 是否需要配置為使用 Nginx 反向代理並以某種特殊方式進行快取?

我真的不知道該怎麼辦。有人遇到類似的問題嗎?

P粉769413355P粉769413355180 天前421

全部回覆(1)我來回復

  • P粉463840170

    P粉4638401702024-03-28 00:33:42

    Laravel 在 Nginx 上運行得很好。我使用 Nginx 在 Google Cloud 上的容器中運行我的應用程序,沒有任何效能問題。

    如果您想使用保留代理,這個代理可以幫我完成這項工作:

    server {
    
    listen 80;
    
    your_news_app.com;
    
    location / {
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_set_header Host $host;
         proxy_set_header X-Forwarded-Proto $scheme;
         proxy_pass http://localhost:8000;
    }

    }

    回覆
    0
  • 取消回覆