PHP работает по модели "shared nothing" - каждый запрос обрабатывается независимо. Жизненный цикл:
- Веб-сервер (Nginx/Apache) получает HTTP-запрос и передает его PHP-FPM через FastCGI
- PHP-FPM выбирает свободный воркер-процесс
- Воркер инициализирует окружение (загрузка расширений, php.ini)
- Лексический анализ (токенизация) исходного кода
- Парсинг - построение AST (Abstract Syntax Tree)
- Компиляция AST в opcodes (байт-код)
- Выполнение opcodes виртуальной машиной Zend Engine
- Генерация ответа и отправка клиенту
- Освобождение всех ресурсов (память, файлы, соединения)
С opcache шаги 4-6 выполняются один раз - закешированные opcodes используются повторно. JIT (PHP 8.0+) компилирует горячие opcodes в машинный код.