Ce face Modulul mpm_event - Arhitectura multi-proces asincronă de înaltă performanță
Modulul mpm_event este alegerea implicită și recomandată în Apache 2.4 pentru performanță extremă.
Spre deosebire de vechiul `mpm_prefork` (unde un proces întreg era dedicat unei singure conexiuni), `mpm_event` deleagă conexiunile KeepAlive inactive unui fir ascultător dedicat, eliberând firele de execuție lucrătoare pentru a procesa cereri active reale.
Funcționează excelent în tandem cu PHP-FPM prin socket-uri Unix.
Exemple
Exemplul 1: Optimizarea mpm_event pentru un server cu 4 nuclee CPU și 8 GB RAM
Permite deservirea a până la 400 de cereri simultane.
<IfModule mpm_event_module>
StartServers 4
MinSpareThreads 50
MaxSpareThreads 150
ThreadsPerChild 25
MaxRequestWorkers 400
MaxConnectionsPerChild 5000
</IfModule>
Ieșire în terminal
Configurație salvată în /etc/apache2/mods-available/mpm_event.conf
Greșeli frecvente
- Încercarea de a rula mpm_event împreună cu vechiul modul ‘libapache2-mod-php’ (care nu este thread-safe); cu mpm_event este OBLIGATORIU să folosiți PHP-FPM.
Comenzi înrudite
apachectl status / httpd -V - Inspectarea stării și a setărilor de compilare: Afișează starea în timp real a proceselor worker sau detaliile de compilare, căile către directoare și arhitectura MPM.Integrarea PHP-FPM prin SetHandler - Execuția scripturilor PHP prin FastCGI Proxy: Conectează Apache la procesorul FastCGI extern PHP-FPM folosind un socket UNIX local de înaltă viteză.Directiva KeepAlive - Reutilizarea conexiunilor TCP persistente: Permite trimiterea mai multor cereri HTTP succesive prin aceeași conexiune TCP deschisă (HTTP Persistent Connections).