Какова основная причина, по которой Facebook вынужден использовать C ++ помимо PHP? Мне интересно, если я сделаю веб-сайт с большим количеством Vistors, мне нужно будет также использовать C ++?
web-development
php
Гома
источник
источник
Ответы:
И вот почему: HipHop для PHP: быстро двигаться :
источник
Короткий ответ - нет, вам не нужен C ++.
Я полагаю, вы имеете в виду хип-хоп . Если вы читаете об улучшениях, это дает около 50%. Это очень важно, если вы используете Facebook, на котором есть тысячи веб-серверов. Сокращение нагрузки на них означает миллионы в экономии затрат на центры обработки данных. В случае компании, имеющей 10-100 серверов с внешним интерфейсом, стоимость разработки значительно перевесит возможную экономию. В любом случае, самая тяжелая обработка выполняется в бэкэнде, который обычно представляет собой некое решение СУБД или NoSQL, разработанное как высоко оптимизированный код C / C ++.
Конечно, можно было бы добиться гораздо большей экономии, просто полностью сбросив PHP. Но это не то, что вы можете сделать с огромной кодовой базой, как в случае с Facebook.
Теперь о другой части вопроса: если вы действительно хотите знать, как справляться с огромными нагрузками, прочитайте блог High Scalability , особенно часть Real Life Architectures.
Это возможно с PHP, но определенно не будет моим выбором. Если вы хотите динамический язык, Python, Ruby или, возможно, Lua будет гораздо лучшим выбором.
источник
Хорошая вещь в подходе FB заключается в том, что им не нужно было сразу принимать решение. Вы должны сделать то же самое. Выберите язык, который сделает вас наиболее продуктивным, но убедитесь, что он легко взаимодействует с C / C ++.
Если у вас есть миллионы пользователей и вам нужно сократить время отклика на миллисекунды, вы можете оптимизировать критические пути, используя C / C ++.
источник
Элементом C ++, используемым Facebook, является HHVM.
Это виртуальная машина HIPHOP. Хотя написано на C ++, это по сути «лучший интерпретатор PHP».
Код php компилируется в байтовый код, который затем интерпретируется HHVM во время выполнения и подвергается оптимизации «Just In Time» во время работы.
Разработчики в фейсбуке по-прежнему пишут в основном на PHP, и то, что вы видите в своем браузере, почти наверняка выводится PHP-программой - все, что было скомпилировано и интерпретировано средой выполнения HHVM.
Фактический HHVM находится в свободном доступе с открытым исходным кодом. Так что если вам нужно обслуживать миллион изображений милых котят в час, вы можете загрузить HHVM и ускорить работу своего сервера с минимальными изменениями в PHP.
источник