Какие интерфейсные и серверные технологии используют Google и Facebook?
Какие технологии используют Google и Facebook для их внутреннего и внешнего интерфейсов?
Каковы их технологии баз данных и языки, которые они используют для обработки исходных данных.
Ответы
Ответ 1
http://web.archive.org/web/20110708015633/http://panela.blog-city.com/python_at_google_greg_stein__sdforum.htm
-
Где используется Python?
- Система сборки Google написана на python. Все корпоративный код проверяется на репозитория и зависимость и создание этого кода управляется питон. Грег упомянул, что для создания code.google.com заняло около 100 строк кода python. Но поскольку это так многие зависимости, система сборки сгенерировал файл размером 3 мегабайта для это!
- Упаковка. У Google есть внутренний формат упаковки, такой как RPM. Эти пакеты создаются с использованием питон.
- Двоичные данные. Это область, где работает Алекс Мартелли, по оптимизации биений между тысячи серверов
- Серверы производства. Все мониторинг, перезапуск и данные функциональность коллекции выполняется с помощью питон
- Отчетность. Журналы анализируются и отчеты генерируются с использованием Python.
- Несколько сервисов, включая code.google.com и группы google. Большинство других интерфейсов находятся в С++ (google.com) и Java (gmail). Все веб-сервисы построены поверх оптимизированный HTTP-сервер, завернутый с SWIG.
Ответ 2
Я могу сказать вам, что Facebook использует PHP в качестве слоя представления внешнего интерфейса, а бэкэнд в основном MySQL и (для поиска сообщений) Cassandra. Более подробную информацию можно найти здесь.
Google использует BigTable для внутреннего хранилища (я не знаю, используют ли они MySQL или другие технологии).
Ответ 3
Google использует Map Reduce для обработки огромного количества данных. Facebook использует реализацию с открытым исходным кодом Map Reduce, называемую Hadoop.
Ответ 4
Слышал слухи, что Facebook использует Erlang для своей системы обмена сообщениями:
http://gregosuri.com/how-facebook-uses-erlang-for-real-time-chat
Ответ 5
Facebook использует HBase для своей инфраструктуры обмена сообщениями. Приложите документ, опубликованный Facebook, о том, как они использовали HBase и их оптимизацию. Хорошо прочитано: http://sites.computer.org/debull/A12june/facebook.pdf
Ответ 6
древовидные Google Google: Файловая система Google, BigTable и MapReduce
Ответ 7
Поскольку вы спрашиваете об интерфейсе и интерфейсе, вы, возможно, заинтересованы в части между ними: как они взаимодействуют между разными системами.
Для этого Google и Facebook используйте Буферы протокола и Thrift соответственно.