Prefork MPM — Her istek için ayrı process. mod_php ile zorunlu, thread-safe olmayan kütüphanelerle uyumlu. En yüksek bellek kullanımı.
Sunucu Kaynakları
MySQL, Redis vb. dahil
ps aux ile ölçün. Tipik: 20–50 MB
Bellek sızıntısı koruması. 0 = sınırsız
PREFORK MPM — mpm_prefork.conf
Worker MPM — Hybrid multi-process/multi-threaded. Prefork’a göre daha az bellek. PHP-FPM ile kullanılmalı.
Sunucu Kaynakları
Process başına thread. Tipik: 25
WORKER MPM — mpm_worker.conf
Event MPM — Apache 2.4+ varsayılanı. En iyi performans, KeepAlive bağlantıları optimize. PHP-FPM ile kullanılmalı.
Sunucu Kaynakları
KeepAlive bağlantı çarpanı. Tipik: 2
0 = sınırsız. Bellek sızıntısı koruması.
EVENT MPM — mpm_event.conf
Apache MPM (Multi-Processing Module), Apache’nin istek işleme modelini belirler. Aktif MPM’yi görmek için: apache2ctl -V | grep MPM
🔀 Prefork
- ✦ mod_php ile zorunlu
- ✦ En yüksek bellek kullanımı
- ✦ Thread-safe olmayan kütüphaneler
- ✦ Her istek = ayrı process
⚙️ Worker
- ✦ PHP-FPM ile kullanılmalı
- ✦ Prefork’tan daha az bellek
- ✦ Her process = N thread
- ✦ Yüksek eşzamanlılık
⚡ Event (Önerilen)
- ✦ Apache 2.4+ varsayılanı
- ✦ En iyi performans
- ✦ KeepAlive optimize
- ✦ PHP-FPM ile kullanılmalı
📋 Faydalı Komutlar
- ✦
apache2ctl -V | grep MPM - ✦
a2dismod mpm_prefork - ✦
a2enmod mpm_event - ✦
systemctl restart apache2
Dosya Konumu: Ubuntu/Debian:
/etc/apache2/mods-enabled/mpm_*.conf | CentOS/RHEL: /etc/httpd/conf.modules.d/00-mpm.conf