| HT articoli
| PerformancePHP-FPM: la rivoluzione di FastCGI
di Andrea UsuelliTable of Contents:
- PHP-FPM: la rivoluzione di FastCGI
- Installazione di PHP-FPM
- Configuriamolo al meglio
- Configurazione - Gestione dei Processi
- Slow Log e Status
PHP-FPM (FastCGI Process Manager) è un frontend FastCGI per PHP che migliora le funzionalità di php-cgi. E’ stato sviluppato da Andrei Nigmatulin nel 2004 come patch di PHP. Successivamente, circa a metà dell’anno scorso, Michael Shadle ha preso le redini del progetto rendendo PHP-FPM una serie di files indipendenti che non richiedono più il patching dei sorgenti di PHP. Ma la vera svolta la si è avuta il 4 Dicembre 2009, quando Antony Dovgal, uno sviluppatore di PHP, ha annunciato che PHP-FPM sarebbe entrato a far parte di un brach SVN ufficiale di PHP, e che quindi, quando saranno completate le fasi di testing, entrerà di fatto a far parte delle release ufficiali di PHP 5.3.x
- Demonizzazione dei processi PHP (file PID, file log, setsid(), setuid(), setgid(), chroot().
- Possibilità di riavviare i processi PHP senza causare alcuna interruzione delle richieste in fase di processamento, potrete quindi cambiare qualsiasi parametro nel file di configurazione o addirittura aggiornare PHP senza neanche 1 secondo di downtime!
- Possibilità di non processare le richieste provenienti da un determinato IP.
- Possibilità di avviare i CHILD sotto differenti UID/GID/CHROOT e con differenti impostaizoni di PHP (php.ini) il tutto senza bisogno di safe mode.
- Possibilità di loggare tramite stdout e stderr.
- In caso di corruzione della memoria RAM condivisa utilizzata da un OPCode Cache, PHP-FPM può effettuare un riavvio di emergenza di tutti i CHILD PHP.
- Forza l’arresto dell’esecuzione di uno script nel caso in cui set_time_limit() avesse dei problemi.
