Apache 與 PHP FPM 和請求峰值,如何設定最佳配置?

Apache 與 PHP FPM 和請求峰值,如何設定最佳配置?

我很幸運,我的網站像病毒一樣傳播開來,而伺服器當然還沒準備好。

不幸的是,我的設定非常糟糕,只有一個伺服器,包含 Apache、PHP (Laravel)、Mongodb 和 redis。

後端 (laravel) 主要提供 REST API。我目前有 1000 多個並髮用戶嘗試使用網站,並且所有內容加載速度都非常慢。 MongoDB 似乎工作正常,因為我可以透過終端機存取它並且查詢立即解決。讓我擔心的是 Apache/PHP FPM 設定。

我的伺服器:8核,16GB RAM

我嘗試使用 PHP FPM 配置,但沒有太多改進。現在我已經有了static300 max_children

在 Apache 上,我將 MPM 事件與此配置一起使用:

<IfModule mpm_event_module>
ServerLimit 40
    StartServers             2
    MinSpareThreads      50
    MaxSpareThreads      100
    ThreadLimit          64
    ThreadsPerChild      50
    MaxRequestWorkers     1000
    MaxConnectionsPerChild   0
</IfModule>

使用top我有這個,這對我來說似乎很好: 在此輸入影像描述

有人可以指出我正確的方向嗎?

相關內容