Некоторые тайны Facebook
Специалисты компании Mashable предлагают нам действительно интересные и забавные факты о некоторых из наиболее ревностно охраняемых секретах Facebook. Вряд ли обычные пользователи знают, как на самом деле работает социальная сеть, которая существует уже более восьми лет.
Конечно, не следует ожидать, что вы узнаете несколько советов о том, как использовать Facebook в собственных целях, например при продвижение сайта где-нибудь в Тюмени. Скорее, это информация об архитектуре программного обеспечения в Интернете.
Как работает Facebook?
Facebook использует множество сервисов и языков программирования. Чтобы обеспечить необходимую точность, сервера используют лампыMemcache. Конечно, мы не имеем ввиду настольные лампы, потому что лампа - это аббревиатура от комбинации Linux, Apache, MySQL и PHP.
Linux и Apache
Если вы когда-нибудь столкнетесь с логотипом, изобращающим черного пингвина, знайте, что это логотип Linux. Не все знают, что Linux является Unix-подобной операционной системой, состоящей из ядра (или так называемые «ядра») и дополнительного программного обеспечения, необходимого для функционирования и использования системы. Хотите знать, почему Facebook выбрал Linux? Из-за своей высокой безопасности и простоты настройки в соответствии с потребностями пользователей. С другой стороны, Apache считается лучшим и самым популярным HTTP-сервером, поэтому не удивительно, почему Facebook использует Apache.
MySQL
Это самая популярная на сегодняшний день система управления базами данных с открытым исходным кодом.
PHP
PHP является самым популярным языком сценариев для создания динамических веб-сайтов. Facebook использует этот язык, потому что он имеет хорошее, профессиональное сообщество программистов, и, кроме того, этот язык имеет большую поддержку.
Memcache
Memcache является сервисом с открытым исходным кодом для кэш-памяти. Это направлено на то, чтобы сделать работу динамических сайтов, таких как Facebook, еще более быстрой путем кэширования данных в оперативной памяти.
Проблемы с "Lamp" системой
У Facebook было много проблем, связанных с Lamp - системой, и это, возможно, потому, что социальный сайт быстро растет. Среди них - определенные трудности в настройке PHP для крупных веб-сайтов, сложности в оптимизации кэш-памяти и, самое главное, в хранении огромного количества информации.
Что происходит "за кулисами"?
Facebook создает любую услугу или программу через собственный интерфейс для разработки приложений, с использованием тких языков программирования, как Java, Python, Erlang и C + +. Вот лишь некоторые из них:
- Apache Cassandra
Кассандра является системой хранения данных, предназначенных для управления большими объемами информации. Входящий поиск на Facebook реализуется с помощью Кассандры.
- Thrift
Thrift предлагает условия для развития разных языковых услуг
- HipHop для PHP
Эта среда разработки в основном используется для преобразования PHP кода в код C + + для того, чтобы оптимизировать сервера Facebook.