Pull to refresh

Facebook открывает новые дата-центры

MySQL
Тысячи серверов в собственных дата-центрах Facebook с трудом выдерживают нагрузку. Каждую неделю на сайте регистрируется почти два миллиона новых пользователей вдобавок к имеющимся десяткам миллионов. Все они проводят на сайте в среднем по нескольку часов и загружают сотни страниц в день, что создаёт немалые проблемы для инженеров. Один из программистов Facebook рассказывает в корпоративном блоге, с чем приходится иметь дело.

Несколько недель назад нагрузка в калифорнийских дата-центрах Facebook достигла максимума. Раньше в таких ситуациях они докупали ещё пару десятков серверов, но сейчас этот способ невозможен. В дата-центрах кончилось место для установки новых стоек.

Впрочем, инженеры Facebook эту ситуацию предвидели заранее и уже давно начали обустройство нового дата-центра в Вирджинии, который сейчас введён в строй. Судя по всему, это далеко не последний дата-центр компании Facebook.

Теперь с Восточного побережья США и из Европы странички сайта станут загружаться гораздо быстрее (это почти треть всех запросов), хотя редактирование и загрузка контента по-прежнему осуществляется только через калифорнийские сервера. Такое перенаправление осуществляется только для 10% трафика. Функция репликации MySQL работает отлично, так что все записи копируются на сервера в Вирджинии в течение одной-двух секунд после модификации. Проблема возникла с тем, как обновлять данные на серверах memcached одновременно с обновлением БД. Для её решения пришлось даже модифицировать исходный код MySQL, чтобы внедрить дополнительные данные в поток репликации.
Tags:дата-центрFacebookрепликацияMySQLmemcached
Hubs: MySQL
Total votes 25: ↑24 and ↓1 +23
Views879

Comments 28

Only those users with full accounts are able to leave comments. Log in, please.

Popular right now

PHP / Bitrix программист
from 140,000 to 200,000 ₽Articul MediaRemote job
MySQL/PHP Application Developer
from 150,000 ₽Cbonds.ruСанкт-ПетербургRemote job
Golang Developer
from 180,000 to 280,000 ₽MercuryoRemote job
Web-разработчик / программист PHP / MySQL
from 100,000 ₽RostpayРостов-на-ДонуRemote job
Backend разработчик PHP/GoLang/MySQL (Middle)
from 120,000 to 270,000 ₽Advex GroupRemote job