На opennet.ru нашел интересную новость: Facebook обнародовал свой проект HipHop. Его суть в том, что PHP код транслируется в C++, а результат потом компилируется с помощью g++. Что дает уменьшение расхода процессорного времени на 50%. Как я понял, эксплуатация HipHop-а в Facebook началась около шести месяцев назад, и сейчас с помощью HipHop-а обслуживается до 90% всего Web-трафика Facebook.
Интересующимся рекомендую прочитать официальный анонс от Facebook-а – там подробнее и увлекательнее (со слайдами ;).
Теперь отсебятина ;) Еще раз убеждаюсь в том, что существует дилемма – быстрая разработка или быстрое исполнение. Увеличивая скорость разработки (за счет более высокоуровневых и заточенных под задачу языков/инструментов) мы обязательно жертвуем скоростью исполнения. И наоборот (используя C++, C, Asm) мы выигрываем в скорости исполнения за счет скорости разработки. Попытки убить сразу двух зайцев приводят к возникновению вот таких вот лисапедов ;)
Кстати, думаю, что аналогичная дилемма существует для компромисса между скоростью разработки и качеством (количеством дефектов). Но данная новость не об этом ;)
3 комментария:
Я правильно понял что это практически аналог cython http://www.cython.org/#documentation который является ограниченным подмножеством питона и тоже транслируется только не в C++ а в си?
Я думаю, он больше похож на "Shed Skin - An Optimizing Python-to-C++ Compiler".
2Rustam: насколько я понял, это не аналоги. В HipHop обычный PHP-код транслируется в C++ код. Не весь PHP-код может быть так преобразован, например, из-за инструкции eval().
Отправить комментарий