Laravel - 部署後 CPU 使用率過高
P粉769413355
P粉769413355 2024-03-27 11:26:47
0
1
463

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

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

我們使用什麼:

  • Laravel 9.0
  • 伺服器:12 核心、128 GB RAM
  • Plesk Obsidian 18.0.48、CentOS 7.9.2009
  • Apache Nginx 作為反向代理

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

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

P粉769413355
P粉769413355

全部回覆(1)
P粉463840170

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;
}

}

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!