Компания Facebook открыла код высокопроизводительного PHP транслятора

Discussion in 'Мировые новости. Обсуждения.' started by Suicide, 3 Feb 2010.

  1. Suicide

    Suicide Super Moderator
    Staff Member

    Joined:
    24 Apr 2009
    Messages:
    2,577
    Likes Received:
    3,507
    Reputations:
    693
    Разработчики социальной сети 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
     
    5 people like this.
  2. vvs777

    vvs777 Elder - Старейшина

    Joined:
    16 Nov 2004
    Messages:
    462
    Likes Received:
    204
    Reputations:
    4
    теперь php стал настолько производительным, что пригоден для научных рассчетов и даже брута хешей.
     
  3. GaS

    GaS New Member

    Joined:
    26 Nov 2009
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Красивенько код оптимизиовали))))))
     
  4. Stinside

    Stinside Member

    Joined:
    1 May 2009
    Messages:
    59
    Likes Received:
    42
    Reputations:
    5
    Не то что Вконтакте? :D
     
  5. попугай

    попугай Elder - Старейшина

    Joined:
    15 Jan 2008
    Messages:
    1,709
    Likes Received:
    405
    Reputations:
    196
    нехило, этот транслятор круче bamcompilera ?
     
  6. tubborg

    tubborg Banned

    Joined:
    4 Feb 2010
    Messages:
    1
    Likes Received:
    1
    Reputations:
    0
    Facebook всё же
    Довольно не плохо)
     
  7. Suicide

    Suicide Super Moderator
    Staff Member

    Joined:
    24 Apr 2009
    Messages:
    2,577
    Likes Received:
    3,507
    Reputations:
    693
    Относительно неплохо..Вместо того, чтобы сразу нормально делать, они вот потом такие "заплатки" лепят..
    И потом, вот спустя пару дней после появившейся новости, что-то я так и не увидела где их можно скачать/посмотреть, даже на обещанном github.com..

    P.S. Название проекта конечно..отпад.
     
Loading...