Больше десяти лет PHP-стек выглядел одинаково: Nginx → FastCGI → PHP-FPM. Надёжно, привычно — и технологически застыло.
FrankenPHP ломает эту модель полностью.
FrankenPHP — это application server, встроенный прямо в Caddy. Без FastCGI, без прокси-прослоек и с ключевой фичей — Worker Mode.
В чём суть
В классическом PHP-FPM каждый запрос:
загружает autoload
поднимает Kernel
и тут же всё уничтожает
Для тяжёлых приложений на Symfony 7.4 это 30–100 мс чистых потерь на каждый запрос.
Что меняет FrankenPHP
Worker Mode загружает приложение один раз и держит его в памяти.
Результат:
🚀 3–4× рост RPS
⚡ P95 latency ~8 мс
🌐 HTTP/3, Early Hints, auto-HTTPS из коробки
🔴 встроенный Mercure без отдельного сервиса
Архитектура будущего
Один контейнер вместо nginx + php-fpm:
1. Docker
2. FrankenPHP
3. Symfony 7.4 LTS
4. real-time события без Redis и WebSocket-зоопарка
Важный нюанс
Worker Mode = общая память между запросами.
Stateful-сервисы — под строгий контроль. Symfony 7.4 решает это через
ResetInterface, но архитектурное мышление придётся обновить.Бенчмарк (AWS t3.medium)
Nginx + PHP-FPM: ~1 240 RPS / 45 мс
FrankenPHP Worker: ~3 850 RPS / 8 мс
PHP-FPM не «плохой» — он просто устарел.
Связка Symfony 7.4 + FrankenPHP — это новый дефолт для high-load и API-first проектов.
Если начинаете новый проект — выбирайте FrankenPHP сразу.
Если поддерживаете легаси — пора планировать миграцию.
👉 Читать статью
Библиотека пхпшника