«Тотальный диктант»: объединить 23 тысячи человек в виртуальной аудитории

05.09.2017
«Тотальный диктант» – образовательный проект, который помогает проверить ваши знания по русскому языку. За 14 лет это событие превратилось из студенческой акции регионального университета в мероприятие всероссийского масштаба.

Каждый год тысячи людей со всего мира добровольно «садятся за парты» в один и тот же день и в одно и то же время (с поправкой на часовые пояса). Впервые «Тотальный диктант» как масштабную акцию провели в 2011 году. В ней принимало участие около 5 тысяч человек. В 2017 году «Тотальный диктант» написало уже порядка 200 тысяч человек. На суше и в воздухе: на 10 рейсах авиакомпании S7, на Иркутской ГЭС, на трех антарктических станциях и даже в горах Крыма.

 Изначально диктант проходил только оффлайн. Сотни площадок по всей России и в других странах принимали людей, которые хотели проверить свою грамотность. Они одновременно писали один и тот же диктант – достаточно сложный и одинаковый для всех участников. Для тех, кто не мог прийти в точки проведения «Тотального диктанта», организовывали онлайн-трансляцию.

 Как вовлечь в акцию людей из всех уголков мира? Сделать онлайн-версию «Тотального диктанта». Впервые в онлайн-формате диктант прошел в 2014 году. Его написало около 6,5 тысяч участников. Уже в 2015 году «Тотальный диктант» писали в онлайне 15 тысяч человек – порядка 15% от всех участников. Мы предположили, что доля онлайн-аудитории продолжит стремительно расти. Значит, сайт должен выдерживать экстремальные нагрузки.

TotalDict.jpg Во время «Тотального диктанта» тысячи пользователей одновременно заходят на сайт акции и выполняют там множество однотипных действий. С подобными пиковыми нагрузками сталкиваются интернет-магазины во время массовых распродаж вроде «Чёрной пятницы». Или сайты по продаже электронных билетов перед выходными и крупными праздниками.

Другая опасность – хакерские атаки.
Что нужно для нормальной работы сайта в течение всей акции?
Над проектом работала целая команда IT-партнеров:
● CMS «1С-Битрикс» была в ответе за функциональность и интерфейс
● «Битриксоид», золотой партнер «1С-Битрикс», оказывал техническую поддержку
● Облачный хостинг на платформе MakeCloud предоставила компания «Сервионика» (ГК «Ай-Теко»)
● Научно-технический центр «Атлас» помог с защитой от ботов и DDoS-атак
● ITSumma обеспечила подготовку IT-инфраструктуры и серверов
● Сервис Stepik предоставил свою образовательную платформу для онлайн-диктанта.

На Stepik мы создали урок, в котором участнику нужно было написать текст — после проверки выводился результат с оценкой, а также указанием количества ошибок и мест в тексте, где они были сделаны. Урок с диктантом на платформе Stepik был встроен в страницу сайта «Тотального Диктанта»

Облачный хостинг

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

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

Черевков.jpg«Использование облачной платформы MakeCloud позволило обеспечить доступ к ресурсам диктанта из любой точки мира. Мы гордимся своим вкладом в эту акцию», — подчеркнул директор центра компетенций, руководитель направления IaaS компании «Сервионика» Алексей Черевков.

 В ходе самого диктанта «Сервионика» и другой партнер проекта, ITSumma, осуществляли мониторинг нагрузки на «облака», чтобы при необходимости оперативно увеличить резерв их вычислительной мощности.

Нагрузочное тестирование Яндекс.Танком показало, какая конфигурация серверов потребуется при пиковой нагрузке. «Изначально новые серверы мы планировали разделить. Один сервер сделать основным, а другой – резервным. Но в итоге для увеличения общей емкости системы мы решили задействовать резервный сервер для обработки запросов на back-end. После оптимизации нагрузочное тестирование показало — по нашему прогнозу, на текущем железе «узких» мест быть не должно», — говорит генеральный директор ITSumma Евгений Потапов.

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

 Хакерские атаки
Еще одной важной задачей стало противодействие хакерским атакам. В прошлом году во время диктанта на сервера обрушилась DDoS-атака. Сайт был недоступен. В этом году мы решили заранее подготовиться к подобным проблемам.

Для этого научно-технический центр «Атлас» использовал сервис «Заслон» на основе технологии Active Bot Protection.

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

Во время проведения мероприятия портал totaldict.ru многократно атаковали. Временами частота и количество запросов от злоумышленников превышали трафик реальных пользователей более чем в восемь раз.
TotalDict-2.jpg«Первые попытки атаковать ресурс мы зафиксировали еще накануне «Тотального диктанта», 7 апреля – это была своего рода подготовка. Активность злоумышленников начала расти 8 апреля с четырех утра по московскому времени, а в период с семи до 11 утра мы зафиксировали ряд комбинированных и многовекторных атак, которые успешно отразили. После этого попытки атаковать ресурс уже были менее организованными и пошли на спад», — говорит Данила Чежин, представитель группы технической поддержки Variti, технологического партнера ФГУП НТЦ «Атлас».

Во время акции была проблема в интеграции со сторонним сервисом проверки диктанта. Партнеры из «Битриксоида» решили ее оперативно — внедрили возможность сохранить текст диктанта на сервере, где его будут дальше обрабатывать. «Для увеличения производительности мы оптимизировали код сайта, внедрили и настроили кеширование компонентов», — говорит директор компании «Битриксоид» Николай Цаценко.

В апреле 2017 года почти 23 тысячи человек написали «Тотальный диктант» онлайн. Помимо рекордного количества онлайн-участников, около 90 тысяч человек смотрели видеотрансляции с сайта.

«Мы столкнулись с большим количеством хакерских атак и беспрецедентной нагрузкой. Но благодаря мощной CMS, сильной IT-команде и помощи партнеров в режиме 24/7, сайт “Тотального диктанта” устоял, и акция состоялась», — резюмирует руководитель проекта «Тотальный диктант» Ольга Ребковец. 

Кейс также опубликован на сайте компании "1С-Битрикс"

Назад к разделу "Публикации"