Чем Facebook занимался после HipHop
16 октября 2012
Думаю, многие слышали про HipHop — компилятор PHP, который использовался в Facebook.
Анонсирован он был в 2010 году. С тех пор Facebook не останавливался в своём желании ускорить разработку и выполнение кода.
В декабре 2011 нам показали виртуальную машину для HipHop. Примерно тогда же Facebook перешёл на неё, значительно ускорив выполнение кода. Код всё ещё компилировался. Для разработки это было явно неудобно и была сделана JIT-версия, которая компилировала и выполняла код на лету. Производительность при этом, хоть и была ниже, чем у компилированного кода, но ненамного.
В мае 2012 Facebook спонсирует двухмесячную разработку простого интерпретатора PHP на PyPy. В итоге выходит JIT-компилятор, способный переваривать большинство конутрукций и функций PHP (без классов). Код выполняется быстрее, чем в HipHop VM. И это за два месяца.
Ближе к середине августа всплывают слухи о том, что Facebook планирует переписать HipHop VM под JVM, основанные на том, что инженеры Facebook побывали на JVM Language Summit и живо интересовались данной темой. В той же заметке приводится оценка в шесть человеколет на реализацию проекта, что не так много, учитывая ресурсы Facebook. К тому же, есть варианты купить и использовать Quercus или Project Zero.
Каким путём пойдёт Facebook далее пока не ясно. Ясно одно: в этом направлении они останавливаться не собираются.
Комментарии RSS по email OK
Ну как говориться: если одна женщина может родить ребёнка за 9 месяцев, это не значит, что 9 женщин родят одного ребёнка за месяц. Это займёт несколько лет точно, но будем наблюдать.
Рустам, ну, тут вполне себе можно нормально распараллелить. Основная нагрузка — реализация стандартных функций PHP.
Yii2 заведется на HipHop? Это было бы большим плюсом для фреймворка .
Вроде Facebook Yii пока не собирается использовать, так что не вижу смысла. В обычных проектах HipHop не нужен: PHP редко бывает причиной медленной работы проекта.
А есть ли у fb какие-то наработки для баз данных. Кстати, что они в качестве db используют ?
Есть, конечно. Cassandra была первоначально как раз разработана Facebook. Насколько знаю, сейчас в Facebook полная каша. Разные части сидят на различных базах, в том числе и на MySQL.
www.insight-it.ru/masshtabiruemost/arkhitektura-facebook/