Mail.ru Cloud Solutions
Назад к кейсам

Как мы обеспечили безотказный доступ к историям поколения ВОВ в период пандемии

Компания
«Бессмертный полк» (www.moypolk.ru)
Отрасль
Некоммерческая, неполитическая, негосударственная гражданская инициатива
Посетителей
Более 1 млн
Сотрудников(кураторов)
1000
Сергей Колотовкин
Сопредседатель движения «Бессмертный полк»

Онлайн-ресурс «Бессмертный полк» в преддверии праздника Великой Победы ежегодно посещает огромное количество людей. В этом году в связи с пандемией коронавируса еще до майских праздников количество посетителей выросло в три раза.

Как сервису удалось обеспечить безотказную работу в период пиковой нагрузки и какую помощь оказали Mail.ru Cloud Solutions с компанией Git in Sky, рассказали сопредседатель движения “Бессмертный полк” Сергей Колотовкин и Генеральный директор Git in SKY Сергей Житинский.

О сервисе «Бессмертный полк»

Moypolk.ru – официальный сайт международного общественного гражданско-патриотического движения «Бессмертный полк». Это крупнейший онлайн-ресурс по хранению летописей и историй поколения Великой Отечественной войны, где содержится более 600 000 записей об участниках военных событий.

На сайте может зарегистрироваться каждый желающий, записать историю своего родственника, создать штендер. Кроме того, здесь реализован поиск, публикуются новости, ведется фотолетопись, создана страница творчества и подкасты. Во время пиковых нагрузок сайт посещают до 100 000 пользователей в час из разных уголков мира.

Почему возникла необходимость в оптимизация ресурса?

В связи с пандемией коронавируса и вынужденной самоизоляцией граждан число пользователей онлайн-ресурса «Бессмертный полк» резко возросло. В период с 6 по 9 мая 2020 года число посещений сервиса превысило 1 млн человек.

Ранее, чтобы обеспечить доступность сайта во время празднования Дня Победы, мы подключали до 10 дополнительных вычислительных машин. Но ввиду кратно возросшей нагрузки такой подход стал неэффективным.

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

Таким партнером для нас стал Mail.ru Cloud Solutions. Помимо масштабируемой инфраструктуры Cloud servers, нам предложили услугу Managed services – мониторинг и администрирование инфраструктуры от экспертов в лице Git in Sky.

Сергей Житинский
Генеральный директор Git in SKY

Чего удалось достичь за несколько дней напряженной работы?

Был проведен аудит и нагрузочное тестирование. Они показали, что инфраструктура не готова к работе на высоких нагрузках:

  • запросы не кэшировались;
  • ядра были с настройками по умолчанию;
  • из-за docker-proxy возникал оверхед сетевой части.

После выявления проблем было проведено вертикальное масштабирование «вниз» и оптимизация.

На платформе Mail.ru Cloud Solutions инженеры Git in Sky добавили сервер мониторинга Prometheus + Grafana и два сервера для имитации нагрузки при нагрузочном тестировании Yandex tank. Средствами Ansible было развернуто системное ПО и выполнены настройки ядра ОС, CDN, фреймворков php-fpm, кэшей redis и баз данных MySQL. На новую инфраструктуру мигрировали приложения, после чего были перенесены данные в базу и переключена пользовательская нагрузка.

После данных манипуляций был составлен профиль нагрузки, который был повторен в нагрузочном тестировании в многократном размере. В результате удалось узкие места, которые ранее не заметили разработчики.

На основе двух простых принципов – «если запрос можно закешировать, он должен быть закеширован» и «производительность системы определяется производительностью самого слабого элемента системы» – были проведены дополнительные настройки. Они фактически «срезали» нагрузку на системные ресурсы, что позволило системе работать с десятикратным запасом в момент всплесков. Срок работ составил пять дней, из них сама миграция была проведена за один день.

В результате проделанной работы:

  • число виртуальных машин удалось сократить с 10 до 4, благодаря чему существенно снизились расходы на аренду мощностей;
  • запросы стали обрабатываться быстрее. За счет этого на одну машину стало приходить больше пользователей, а уменьшение количества машин снизило нагрузку на базу данных в части параллельных запросов;
  • количество одновременно обслуживаемых пользователей увеличилось с 1000 до 600 000 в час.

Платформа Mail.ru Cloud Solutions обеспечила нас надежной и гибкой инфраструктурой, которая в нужный момент помогла справиться с возросшей нагрузкой. Пропускная способность сайта достигла необходимых показателей, запросы стали отрабатываться быстрее, благодаря чему исторический архив стабильно работал на протяжении всего периода повышенной активности и обеспечил каждому посетителю доступ к важной информации в День Победы.

Дополнительные усовершенствования системы

Для корректного распределения нагрузки на мощности было реализовано администрирование запуска кода. Совместно с методологией непрерывной интеграции и доставки (CI/CD) это поможет нашим разработчикам сократить количество рутинных ручных операций и ускорить развертывание кода с автоматизированными тестами, включая нагрузочные, на всей инфраструктуре.

Также реализован мониторинг для сбора метрик по нагрузке приложений с уведомлениями и предсказанием аварий. Теперь нам доступно мгновенное информирование о потенциальных проблемах, и мы сможем реагировать на них до того, как работа сайта будет нарушена и это станет заметно пользователям.

Благодаря администрированию от Git in Sky мы можем полностью сфокусироваться на разработке приложений и рассчитывать на постоянную помощь и поддержку экспертов в настройке системы. Облачная инфраструктура на базе технологий MCS обеспечила наш сайт необходимыми мощностями и гибкостью, а партнеры из Git in Sky помогли поддержать работоспособность в период высокой нагрузки.

Очень символично, что технологии будущего помогают сохранить память о великих подвигах прошлого. Масштабирование и оптимизация работы онлайн-ресурса «Бессмертный полк» была непростой задачей. Но слаженная партнерская работа позволила решить ее максимально оперативно.

В дни празднования 75-летия Великой Победы каждый желающий смог посетить «Бессмертный полк», поделиться историей своей семьи, узнать больше о жизни и судьбе родственников, друзей и знакомых.

Зарегистрируйтесь и попробуйте сервисы бесплатно

Если бонусов для тестирования не хватит - оставьте заявку, мы начислим еще или предложим полноценный пилот.

21 год
опыта поддержки высоконагруженных сервисов
100+ млн
пользователей по всему миру
7 лет
экспертизы развития облачной инфраструктуры