ТЕХНОЛОГИИ ОН-ЛАЙН ОБЩЕНИЯ
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
ЕЩЕ ПО ТЕМЕ:
СМИ: БРИТАНСКИЕ СПЕЦСЛУЖБЫ ПРОНИКЛИ В СОЦИАЛЬНУЮ СЕТЬ LINKEDLN
11.11.2013Британская спецслужба "Центр правительственной связи" (GCHQ) внедрилась в деловую социальную сеть LinkedIn. С помощью фальшивых профилей LinkedIn сотрудники GCHQ получали доступ к компьютерам заинтересовавших их фирм. Об этом в воскресенье, 10 ноября, сообщает интернет-издание Spiegel Online.Штаб-квартира GCHQСреди целей британской спецслужбы оказались, в частности, бельгийская телекоммуникационная компания Belgacom и производитель компьютерных программ Mach
СОВЕТЫ, РУКОВОДСТВА ДЛЯ ПОЛЬЗОВАТЕЛЕЙ
26.07.2013В нашей статье мы хотим хоть немного научить новичков пользоваться IRC. Ну, что ж приступим?! Каждый пользователь, уже освоившийся в IRC, чтобы выразить свое настроение или характер, старается...
САМЫЕ ПОПУЛЯРНЫЕ МАТЕРИАЛЫ 2011 ГОДА
31.10.2013В сегодняшнем дайджесте самые важные и популярным материалы 2011 года, посвященные Интернету и технологиям. Что волновало наших читателей в прошедшем году, какие новости, темы, компании, люди привлекли наибольшей интерес нашей аудитории.
ОПЯТЬ ПРО УШЛЕПКА ИЛИ КАПИТАЛИЗАЦИЯ ЗА СЧЕТ ПРИОБРЕТЕНИЯ ПО
4.12.2013Я уже писал про ушлепка из билайна приобретающего ПО для увеличения капитализации компании. Видимо придется кое-что прояснить. И ПБУ(я имею ввиду 14.2007) и МСФО (IAS 38) описывая нематериальный актив ,коим является программное обеспечение, указывают на ключевой фактор описывающий данный актив- экономическую составляющую.Т.е. актив должен быть экономически выгодным для приобретателя. Как программное обеспечение может быть выгодным если в ИТ не считают экономическую составляющую ИТ? Тока не надо меня учить, как работает экономический отдел. Они и...


