Sobes.tech
Middle

Czym jest PHP-FPM?

sobes.tech AI

Odpowiedź od AI

PHP-FPM (FastCGI Process Manager) to alternatywny menedżer procesów FastCGI dla PHP. Zapewnia wyższą wydajność i stabilność w porównaniu z tradycyjnymi metodami używania PHP z serwerami internetowymi, takimi jak mod_php dla Apache.

Jego główne funkcje:

  • Zarządzanie pulami procesów PHP do równoległego obsługiwania żądań.
  • Wsparcie dla różnych strategii zarządzania procesami (statyczna, dynamiczna, na żądanie).
  • Logowanie błędów i wolnych zapytań.
  • Monitorowanie stanu procesów.
  • Możliwość ponownego uruchomienia bez przerwania pracy.

W przeciwieństwie do mod_php, który integruje PHP bezpośrednio z serwerem web, PHP-FPM działa jako oddzielny proces, wymieniając dane z serwerem web przez protokół FastCGI. To zmniejsza zużycie zasobów serwera web i pozwala na bardziej elastyczne zarządzanie procesami PHP.

// Przykład konfiguracji puli procesów PHP-FPM
[www]
user = www-data
group = www-data
listen = /run/php/php7.4-fpm.sock ; Lub IP:port
pm = dynamic ; Strategia zarządzania procesami
pm.max_children = 50 ; Maksymalna liczba procesów potomnych
pm.start_servers = 5 ; Liczba serwerów na starcie
pm.min_spare_servers = 5 ; Minimalna liczba nieużywanych serwerów
pm.max_spare_servers = 35 ; Maksymalna liczba nieużywanych serwerów