Пятёрочку выручаем!

(обязательно надо пропеть вслух, как в рекламе этой торговой сети)

Наш второй коммерческий проект, являющийся одни из самых масштабных с его 200 тысячами одновременных участников изо всех регионов страны. Именно он дал нам мощного пинка и тонну опыта, благодаря которому Pitcha движется вперед и сейчас.

Задача

Реализовать корпоративный спортивный квиз в рамках проекта "Турбостарты", в котором по оценкам клиента могут одновременно участвовать 200 тысяч игроков.

Как все начиналось

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

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

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

Главной фишкой стала функция, позволяющая синхронно обновлять содержимое экранов всех устройств, на которых она открыта. “Эта технология позволяет вывести любую информацию, изображение, форму любому числу людей” - сообщили разработчики на одной из первых стадий создания проекта и не обманули. Изначально предполагалось, что мы будем из админки отправлять всем зрителям форму с вопросом и кнопками вариантов ответа, а зрители будут отвечать на них. Так оно и было реализовано, но в процессе разработки, платформа обросла и другими интерактивными функциями, с которыми могли взаимодействовать участники - опросы, чаты, активные кнопки и тд.

Офисные замеры обнадеживали. Задержка вывода на экраны составляла не более 0,3 секунды.

Оставалось проверить, как новый движок платформы поведет себя при отправке сигнала в отдаленные регионы. Всей командой мы вспоминали, у кого есть знакомые в других городах и странах. В итоге, тестировщики нашлись даже в США, Австралии и Израиле, а результаты теста показали, что даже при самых неблагоприятных условиях, рассинхрон на различных устройствах не превышает 0,8 секунды. И это было нашей победой!

Итак, технология была. Оставалось только найти клиента.

Пятёрочка выручает

По какому-то счастливому совпадению, клиент нашелся довольно быстро. Им стала одна из крупнейших розничных сетей в России - Пятерочка. У них из-за пандемии как раз отменилось грандиозное оффлайн мероприятие в Сочи, и им срочно требовалась онлайн-альтернатива, которая могла бы вовлечь и удержать их многотысячную армию сотрудников.

В чем была особенность этого мероприятия

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

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

А еще все должно было работать не на разработанном нами лэндинге, а на сайте, который уже давно существует. Для ведения турнирной таблицы нам были нужны имена и идентификаторы пользователей, но выгружать нам базу данных заказчик не хотел по соображениям приватности. Чтобы не дублировать функционал авторизации, мы предложили администраторам сайта отдать нам айфрейм с переданным параметром в виде id пользователя. Этот вариант устроил всех, на нем и остановились.

Что могло пойти не так

Ничего! Ну почти.

Регистрация на онлайн-мероприятия открылась за час до старта эфира, и в поддержку стали поступать сообщения о том, что анимация в нашей форме взаимодействия отображается некорректно. Стало немного не по себе, но в ситуации все равно надо было разобраться. Запросили у “проблемных” зрителей данные об устройствах, с которых они зашли и от полученных ответов искренне офигели! Некоторые из них участвовали с компов, почему-то работающим еще на Windows 2000!!! Две! Тысячи! Ааааа!

И как понятно из название этой некогда прекрасной ОС, выпущена она в 2000 году, и даже Майкрософт прекратил ее поддержку в 2005. А дата мероприятия - июнь 2020. Так еще и браузер у них - Internet Explorer 6!!! В общем сообщаем клиенту о том, что их сотрудники используют мягко говоря ну ооооочень устаревшее оборудование, и мы не можем гарантировать корректное отображение на этих устройствах, на что получаем в ответ новые вводные - значительная часть сотрудников участвует в мероприятии со своих рабочих мест, оснащенных подобной техникой.

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

Итоги

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

Саша, привет! Как ты?) Скажи плиз, если ещё будем делать подобный квиз как на Турбостартах - сколько будет стоить его проведение?

Роман Гирник, продюсер агентства Подъёжики (Worlds) через три дня после окончания мероприятия

Читать другие кейсы