Социальная сеть Facebook вошла в число спонсоров Apache Software Foundation
Кроме финансовой поддержки, помогающей развитию проектов Apache, поддержанию инфраструктуры и проведению встреч разработчиков, Facebook принимает участие в разработке таких проектов Apache, как Hive, Hadoop, Thrift и Cassandra.
🕛 13.01.2010, 10:34
Социальная сеть Facebook вошла в число организаций поддерживающих проекты фонда Apache в статусе "золотого" спонсора. Кроме финансовой поддержки, помогающей развитию проектов Apache, поддержанию инфраструктуры и проведению встреч разработчиков, Facebook принимает участие в разработке таких проектов Apache, как Hive, Hadoop, Thrift и Cassandra. Два из последних проектов разработаны в недрах Facebook и представлены сообществу Apache как открытые разработки.Thrift представляет собой фреймворк для расширяемой межъязыковой разработки сервисов, позволяющий генерировать код для сервисов, поддерживающих языки C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk и OCaml. Cassandra является высоко масштабируемой распределенной базой данных, объединяющей полностью распределенную хеш-систему Dynamo с моделью хранения данных, похожую на Google Bigtable.
Таким образом в число платиновых спонсоров Apache входят компании Google, Microsoft и Yahoo!; в число золотых спонсоров - Facebook и Hewlett-Packard; в число серебряных - Progress Software и Springsource/VMWare; бронзовых - BlueNog, Intuit, Joost и Matt Mullenweg.
Инфраструктура Facebook работает на стандартном LAMP стеке (Linux, Apache, MySQL, PHP), наиболее нагруженные серверные компоненты написаны на C++, Erlang и Java. Из недр Facebook выросли такие открытые проекты, как:
* высокопроизводительный web-сервер Tornado совмещенный с фреймворком для разработки web-приложений на языке Python, напоминающим Django, Google webapp и web.py; * система агрегирования логов с большого числа серверов Scribe; * библиотека для построения web-сервисов Thrift; * в рамках проекта Facebook Open Platform доступен код REST API, парсеров FBML (Facebook Markup Language), FQL (Facebook Query Language) и FBJS (Facebook Javascript); * патчи для улучшения производительности memcached в 4-6 раз; * распределенное хранилище ThruDB; * интерактивный shell phpsh, * система профилирования PHP скриптов XHProf; * библиотека для встраивания PHP скриптов в C++ программы; * распределенное хранилище данных cassandra; * утилита flvtool++ для изменения мета-данных в FLV файлах.