ТЕХНОЛОГИИ ОН-ЛАЙН ОБЩЕНИЯ
FACEBOOK 9-КРАТНО УСКОРЯЕТ ЯЗЫК РАЗРАБОТКИ PHP
6 Октября 2013
Социальная сеть Facebook продолжает работать с популярной средой веб-разработки PHP, добиваясь ускорения ее работы на существующем оборудовании. Накануне в Facebook сообщили, что разработали PHP Virtual Machine, которая может выполнять инструкции на языке PHP до 9 раз быстрее, чем обычный интерпретатор PHP. "Наша цель - сделать PHP действительно быстрым", - говорит инженер Facebook Джоэль Побар.
Ранее компания Facebook уже применяла разные трюки для ускорения работы PHP и повышения его масштабируемости. Так, была создана виртуальная машина HipHop, которая до начала этого года активно использовалась на серверах Facebook.
PHP представляет собой интерпретируемый язык, то есть его исходный код преобразуется и выполняется напрямую процессором компьютера. В общем случае это значит, что интерпретируемые языки не транслируются в бинарные структуры и не могут выполняться также быстро, как низкоуровневые языки, такие как C или C++, однако по всему миру очень много поклонников PHP, так как этот язык прост в конструкции и обладает богатыми возможностями.
Чтобы облегчить работу с PHP на высоконаргуженных проектах, таких как Facebook, был создан интерпретатор HipHop, который транслировал PHP в C++код, чтобы тот выполнялся процессором быстрее. В Facebook говорят, что до недавнего времени их устраивал HipHop, однако с ростом базы пользователей и он перестал справляться с обслуживанием более чем миллиарда пользователей.
Новая виртуальная машина PHP является развитием HipHop и работает по принципу Just-in-time компилятора. Она на лету конвертирует PHP-код в байткод и сохраняет наиболее востребованные откомпилированные фрагменты в памяти для их скорейшего вызова по необходимости. По похожему алгоритму работает и Java-среда на сервере.
Компания уже разместила исходники виртуальной машины на ресурсе GitHub.
"Just-in-time позволяет виртуальной машине принимать более умные решения. К примеру, если в PHP происходит вызов MySQL, то компилятор сам определяет тип выдаваемых данных, после чего он генерирует или вызывает код, который наилучшим образом подходит для обработки подобных типов данных", - говорит Побар.
При этом, в Facebook говорят, что хотя компилятор достаточно умен, чтобы понять типы данных или понять, какие части кода лучше держать наготове, полный успех все-таки зависит от особенностей реализации кода руками программиста. Использование виртуальной машины целесообразно на больших проектах с высоким уровнем динамической генерации данных.
CyberSecurity
ЕЩЕ ПО ТЕМЕ:
GOOGLE ПРИВЕДЕТ В ИНТЕРНЕТ ТРИ МИЛЛИАРДА ПОЛЬЗОВАТЕЛЕЙ МОБИЛЬНИКОВ
20.08.2013Поисковик Google намерен привлечь в интернет 3,2 миллиарда пользователей мобильных телефонов, сообщает PC World. Пользователей персональных компьютеров в настоящее время насчитывается 850 миллионов.
ЗАВИСИМОСТЬ ОТ СОЦИАЛЬНЫХ СЕТЕЙ.
21.08.2013Зависимость от социальных сетей. Я задам вам такой вопрос: «Зависимы ли вы от социальных сетей?» Думаю, что большинство людей ответят, что зависимость есть! Лично я уже не могу, что бы...
ЭЛЕКТРОННЫЙ УЧЕБНИК ОТ МОСКОВСКОЙ МЭРИИ: ШЕДЕВР ЧИНОВНЫХ «НАНОТЕХНОЛОГИЙ»?
1.08.2013В прессе и в сети в последний год регулярнопоявляются сообщения о том, что Департамент образования Москвы ведет масштабный инновационный проект по апробации в 60 школах 11 электронных учебников, разработанных на гранты мэра. Информацииоб этом эксперименте много, она оптимистична, порой до помпезности, но при этом расплывчата и противоречива. Что есть факт, а что — фантазии чиновников и журналистов сразу и не поймешь. Дело доходит до курьёзов. Автор заметки, опубликованной на книгоиздательском портале Pro-books даже решил (возможно, перепутав И.И. Калину с А.Б. Чубайсом), что речь идет об 11 моделях e-ink ридеров, которые якобы испытываются в школах с целью выбора оптимальной замены полиграфическим учебникам.
SKYPE ПРЕДСТАВЛЯЕТ БЕТА ВЕРСИЮ ПРОГРАММЫ SKYPEKIT
11.11.2013В течение почти семи лет Skype реконструировал свое программное обеспечение предлагая не только свободное голосовое общение и видеозвонки но и дешевые международные звонки по всему миру. Теперь Skype дает возможность разработчикам программного обеспечения включить программу Skype в свои продукты с помощью нового комплекта для разработчиков SkypeKit.


