![]() |
Компания Facebook открыла код высокопроизводительного PHP транслятора
Разработчики социальной сети Facebook представили проект "HipHop" - новый открытый транслятор для языка PHP, распространяемый в рамках свободной лицензии PHP. HipHop трансформирует код PHP скриптов в высоко оптимизированное представление на языке C++, пригодное для дальнейшей компиляции при помощи g++ в машинные инструкции. В настоящее время HipHop используется для обработки около 90% запросов в сети Facebook.
В состав пакета входит транслятор кода, переработанный PHP runtime и набор переписанных с целью повышения производительность стандартных библиотек и расширений. По заявлению разработчиков использование HipHop позволяет уменьшить нагрузку на CPU примерно на 50%. Обратной стороной высокой производительности является принципиальное отсутствие поддержки некоторых PHP конструкций, таких как eval(). HipHop содержит более 300 тыс. строк кода и 5 тыс. unit-тестов, загрузить исходные тексты транслятора можно будет через несколько часов с сервиса GitHub. Проект создан как универсальная альтернатива традиционному в больших проектах способу оптимизации - переписыванию наиболее ресурсоемких участков PHP кода на языке C/C++ и оформления таких блоков в виде PHP расширений. Перед созданием HipHop в Facebook были предприняты и другие методы оптимизации, например, был переписан код Zend Engine и патчи переданы проекту PHP, но результат подобной оптимизации оказался не таким большим как хотелось бы. Zend Engine преобразует исходные тексты на языке PHP в опкод, который затем выполняется на виртуальной машине Zend. Проекты подобные APC и eAccelerator кешируют сгенерированный опкод, а Zend Server кроме кеширования добавляет в опкод некоторые дополнительные оптимизации. Из других подобных проектов отмечены компиляторы phc и Roadsend, преобразующие PHP код в представление на языке Си, Quercus - транслятор PHP в Java и проект Phalanger , преобразующий PHP код в .Net. 02.02.2010 http://www.opennet.ru/opennews/art.shtml?num=25268 http://developers.facebook.com/news.php?blog=1&story=358 |
теперь php стал настолько производительным, что пригоден для научных рассчетов и даже брута хешей.
|
Красивенько код оптимизиовали))))))
|
Не то что Вконтакте? :D
|
нехило, этот транслятор круче bamcompilera ?
|
Facebook всё же
Довольно не плохо) |
Относительно неплохо..Вместо того, чтобы сразу нормально делать, они вот потом такие "заплатки" лепят..
И потом, вот спустя пару дней после появившейся новости, что-то я так и не увидела где их можно скачать/посмотреть, даже на обещанном github.com.. P.S. Название проекта конечно..отпад. |
| Время: 07:56 |