nixp.ru v3.0

23 ноября 2024,
суббота,
11:21:11 MSK

3 февраля 2010, 03:26

В Facebook оптимизировали PHP и представили Open Source-проект HipHop

4
HipHop for PHP от авторов Facebook
HipHop for PHP от авторов Facebook
Иллюстрация с сайта Wiki.Developers.Facebook.Com

Разработчики крупнейшей в мире социальной сети Facebook объявили о выпуске под свободной лицензией специального средства для оптимизации кода, написанного на языке PHP, — HipHop.

Потребность в оптимизации приложений для одного из популярнейших в мире веб-сервисов весьма очевидна. Использование PHP накладывает определенные ограничения на производительность, но в переходе на другой язык программирования в Facebook не заинтересованы, поскольку именно PHP позволяет им быстрее находить разработчиков и «шагать впереди планеты всей». Поэтому они решили оптимизировать код PHP, в результате чего и появился проект HipHop, использование которого позволило снизить нагрузку на серверы в среднем на 50%.

HipHop for PHP — это своеобразный «преобразователь исходного кода». Он конвертирует PHP-код в оптимизированную версию на C++, а затем обращается к g++ для его компиляции. Для его реализации разработчикам пришлось отказаться от некоторых редко используемых функций, таких как, например, eval(). Помимо непосредственно преобразователя кода в состав HipHop входят новая реализация среды исполнения PHP, а также ряд переписанных основных расширений к PHP (PHP Extensions) — все это сделано для того, чтобы воспользоваться всеми возможностями в оптимизации производительности.

В рамках проекта HipHop было написано более 300 тысяч строк кода и более 5 тысяч unit-тестов. Заявляется, что в итоге «HipHop позволяет сохранить все лучшее от PHP и получить преимущества в производительности, предоставляемые C++». Исходный код проекта будет опубликован в ближайшее время на GitHub под лицензией PHP.

Постоянная ссылка к новости: http://www.nixp.ru/news/10060.html. Дмитрий Шурупов по материалам developers.facebook.com.

fb twitter vk
ant0075

eval() — это одна из наиболее циммусных возможностей PHP. Так что не очень всё это весело…

Но определённая сфера применения, конечно, найдётся…

ArhangeL

А смысл?…. 

Денис Горбачев

Давно известно, что «eval is evil».

При правильном проектировании подобные конструкции попросту не нужны.

myst

Ой, правда что ли? А пацаны-то и не знают! Джон Маккарти, кстати, тоже… Пойду скажу!

Dmitry.Stolyarov

Ой. Вообще странная штука. Но интересная.

Следующим шагом должно стать создание компилятора PHP, сразу компилирующего PHP и приделывающее виртуальное окружение.

Интересно, сможет ли он скомпилировать Symfony :)!

d4rw1n1s7

как сказал мой хороший знакомый:

«Эти ребята придумали CGI… СНОВА!»