Компиляция PHP приложений - HipHop-php
PHP - интерпретируемый язык программирования, при каждом запросе происходит анализ и "выполнение" исходного кода. Такой подход, конечно, очень удобен на стадии разработки проекта, но вносит лишний шаг в процесс выполнения продакшен кода. Таким образом интерпритация, на первый взгляд сильная сторона PHP, стоит лишнего процесорного времени и ресурсов.
Ниже речь пойдет о компиляторах, позволяющих компилировать php код в C++, а его в исполняемый. Таким образом PHP приложения выполняются непосредсвенно процессором, минуя интерпритатор.
Проверим все ли так хорошо на практике.
Как работает интерпритатор
Интерпритация PHP кода проходит в два этапа:
- Парсинг кода и генерация опкодов (Zend opcodes) - инструкций, понятных интерпритатору.
- Выполнение опкодов.
Тогда как первая фаза хорошо поддается оптимизации (использование кеша опкодов), вторая довольно закрытая - интерпретатор всегда является посредником между набором команд и процессором, выполняющим их. Без интерпритатора, процессору не понять, чего делать с опкодами.
Чтобы избавиться от звена-интерпритатора придумали компиляторы, наиболее популярный и свежий из них HipHop от Facebook. Пощупаем его поближе.
https://www.phphighload.com/2012/06/php.html
Все хочется попробовать на практике это детище Facebook.
0 Комментариев