Migliore configurazione PHP-FPM:calcolo facile e semplice. PHP-FPM è un FastCGI Process Manager un'alternativa a PHP. PHP-FPM è altamente configurabile regolando facilmente le impostazioni del pool per diversi utenti che utilizzano diverse versioni di PHP e molte altre.
In questa guida imparerai il miglior metodo di configurazione PHP-FPM utilizzando alcuni semplici calcoli per evitare alcuni errori elencati di seguito.
1. server reached pm.max_children setting, consider raising it 2. seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers)
Fase 1:Specifiche del server
Per prima cosa, annota le specifiche del tuo server. I tuoi core della CPU e le dimensioni della RAM.
Ad esempio, in questa guida supponiamo che tu abbia 2vCPU e 16 GB di RAM.
Ora, determina quanta memoria puoi allocare per l'elaborazione PHP. Possiamo supporre circa 10 GB di RAM su 16 GB di RAM che possiamo allocare per l'elaborazione PHP.
Fase 2:quanta RAM consuma ogni processo PHP-FPM
Puoi eseguire il comando seguente per controllare la memoria media consumata per i processi PHP-FPM in esecuzione.
ps -ylC php-fpm7.4 --sort:rss
Sostituisci la versione PHP con quella utilizzata per la tua applicazione.
Puoi ottenere un output simile a quello qui sotto.
Prendi nota dei valori sotto RSS colonna. Questa è la memoria utilizzata da ciascuno dei tuoi processi PHP-FPM.
Qui abbiamo circa 20 MB La RAM viene utilizzata in media da ogni processo figlio PHP-FPM.
Fase 3:calcola i valori per i bambini PHP-FPM
Di default il pm
il valore verrà impostato su dynamic
, quindi dovrai configurare i server di riserva minimi e massimi e anche i figli massimi.
Cambieremo il pm
valore a ondemand
i server di riserva verranno creati automaticamente in base alla richiesta.
pm = ondemand
Ora possiamo calcolare quanto processo figlio può essere creato per l'esecuzione dell'applicazione in base alle specifiche del server.
Mentre stiamo per assegnare 10 GB RAM per elaborazione PHP-FPM. Eseguendo il comando nel passaggio precedente abbiamo riscontrato un valore medio di 20 MB consumato da ogni bambino.
La RAM massima può essere utilizzata da PHP-FPM / RAM consumata da ogni bambino =Valore figlio massimo per PHP-FPM
Quindi 10000 /20 =500 . Puoi utilizzare fino a 500 bambini PHP-FPM in base alle specifiche del tuo server. Quindi la tua configurazione PHP-FPM dovrebbe essere...
pm.max_children = 500
Questi sono i 2 valori che devono essere regolati affinché PHP-FPM funzioni senza problemi sul tuo server.
Puoi anche configurare il numero massimo di richieste 500 semplicemente decommentando il pm.max_requests
. Ciò sarà utile in caso di perdite di memoria in librerie di terze parti.
La configurazione finale dovrebbe essere così.
pm = ondemand pm.max_children = 500 pm.max_requests = 500
Preparati per un ruolo di Professionista dell'Information Technology con sistema operativo Linux
Conclusione
Ora hai imparato a configurare i valori PHP-FPM in base alle specifiche del tuo server con semplici calcoli.
Grazie per il tuo tempo. In caso di problemi o feedback, si prega di lasciare un commento qui sotto.