Под влиянием компании Facebook, стремящейся увеличить производительность PHP, команда разработчиков этого популярного языка веб-программирования с открытым кодом решила внести коренные изменения в используемую технологию. В начале мая разработчик ядра PHP Дмитрий Стогов объявил о начале проектирования новой ветви языка, получившей название phpng (PHP Next Generation). Соответствующая информация была опубликована в блоге на сайте PHP.net. Идея, положенная в основу новой версии языка, заключается в реорганизации внутренних интерфейсов API таким образом, чтобы код PHP мог использовать преимущества компиляции «на лету» (Just-In-Time, JIT). Новая ветвь phpng не поддерживает возможности JIT, но пытается устранить препятствия, мешающие современным и будущим реализациям исполняемого механизма с поддержкой JIT достигать максимальной производительности. Это предполагается делать за счет оптимизации использования памяти и переработки некоторых интерфейсов API ядра. По словам Стогова (в компании Zend, поставляющей программное обеспечение PHP, он занимает должность главного инженера по производительности), уже внесенные в phpng изменения привели к 20-процентному росту производительности на целом ряде запросов WordPress (популярная платформа для создания блогов, которая создана на PHP).

Сегодня phpng еще не подходит для решения производственных задач, но после завершения разработки эта технология может стать основой для создания PHP 6 или PHP 7. В настоящее время рабочей версией является PHP 5.5. Разработчики ядра обещают, что новые итерации языка будут обладать обратной совместимостью с предыдущими версиями. Это означает, что код, написанный для ранних версий, в неизменном виде сможет выполняться и на новых версиях PHP. Возможно, именно разработка phpng создала условия для выпуска компанией Facebook в марте этого года PHP-подобного языка Hack, который поддерживает множество дополнительных функций, не включенных непосредственно в PHP.

Поделитесь материалом с коллегами и друзьями

Купить номер с этой статьей в PDF