PHP-FPM

botond küldte be 2018. 05. 01., k – 22:39 időpontban

A PHP kódokat többféle SAPI (Server Application Programming Interface) segítségével futtathatjuk a webszerveren, ezek közül az egyik a PHP-FPM (FastCGI Process Manager).

A PHP-FPM egy alternatív PHP FastCGI kivitelezés, melyet további funkciókkal bővítettek, hogy optimálisan szolgálhasson ki nagyobb forgalmú weboldalakat is. Ezek a funkciók az alábbiak:

  • Adaptív folyamat (process) létrehozás
  • Fejlett folyamatmenedzsment, elegáns start/stop funkciókkal
  • A képesség, hogy egyidejűleg indíthasson folyamatokat különböző uid / gid / chroot / környezetekben és különböző php.ini-k használatával
  • Stdout és stderr naplózása (így nem a weboldalon jelennek meg a kényes hibaüzenetek, hanem naplófájlokba irányíthatjuk őket)
  • Sürgősségi újraindítás az esetleges operátorkód gyorsítótár megsemmisülése esetére
  • Gyorsított feltöltési támogatás
  • "slowlog" támogatás – A szokatlanul lassú script-ek naplózása (nem csak a nevüket naplózza, hanem tárolja a PHP backtrace-eiket és a folyamat futási adatait is).
  • A FastCGI kiterjesztése, mint például a fastcgi_finish_request() – egy speciális függvény a kérés befejezéséhez és az összes adat a klienshez történő azonnali továbbításához (Ez időigényes feladatok elvégzését teszi lehetővé anélkül, hogy az ügyféllel nyitva kellene tartani a kapcsolatot).
  • És még sok egyéb...

 

Bár a PHP-FPM-et eredetileg nem virtual hosztingra tervezték (a nagy mennyiségű pool-ok száma miatt), mégis bármilyen felhasználási modellhez kiválóan alkalmazható.