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

Современный бизнес тесно связан с разработками в области высоконагруженных систем. Потребность пользователей в мгновенном доступе к актуальной информации, необходимость поддерживать растущие объемы данных и обеспечивать их безопасность сделали High-Load Systems одной из основ успешного бизнеса. Однако создание подобной инфраструктуры требует от IT-специалистов особых компетенций, поскольку высоконагруженная система должна обладать производительностью, масштабируемостью, надежностью — качествами, которые непросто совместить. Как соблюсти этот баланс и внедрить решения, которые обеспечат бизнесу эффективность и стабильность, спросили у Глеба Шкрябина, старшего инженера управленческого аппарата (Staff Engineer) международной компании BrainRocket. В послужном списке Глеба — разработка целого ряда High-Load Systems, среди которых онлайн-магазин, мессенджер с функциями таск-менеджера, платформа для онлайн-аукционов, система аналитики и мониторинга производительности высоконагруженных баз данных. Разбираемся вместе с Глебом Шкрябиным, в каких бизнесах высоконагруженные системы играют ключевую роль и какие инновационные решения предлагают IT-специалисты.

Глеб Шкрябин

Платформа e-commerce

Высоконагруженные системы должны обеспечивать стабильную работу сайта или приложения даже при пиковой нагрузке. В числе бизнесов, для которых это имеет особое значение, — онлайн-ритейл, где непрогнозируемые скачки спроса, к примеру, во время распродаж, требуют мгновенного увеличения производительности. Глеб Шкрябин создал интернет-площадку для торговли одежды, которая стабильно справляется с нагрузкой на сайт в моменты резкого подъема трафика.

Онлайн-платформу для торговли одеждой, действующую по принципу Ozon и Wildberries, Глеб создал как бэкенд-разработчик компании CodeGeek.

«Двумя ключевыми аспектами для обеспечения стабильной работы площадки под высокой нагрузкой, — объясняет Глеб, — были грамотный выбор базы данных и понимание того, как системы на разных языках программирования реагируют на масштабирование».

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

Платформа, которую Глебу удалось разработать и запустить, действует одинаково надежно и быстро вне зависимости от количества посетителей. Для компаний e-commerce, успех которых напрямую связан с качеством обслуживания и быстротой отклика, стабильный и оперативный сервис даже при высокой нагрузке — важное конкурентное преимущество, позволяющее наращивать клиентскую базу и доходы.

Мессенджер и таск-менеджер

В основе мессенджеров также лежат высоконагруженные системы: сервис обмена сообщениями должен обладать набором таких опций, как возможность синхронизации между различными устройствами, бесперебойная работа 24/7, мгновенная доставка и обеспечение конфиденциальности переписки. Среди успешных разработок Глеба Шкрябина — корпоративный мессенджер, который не только удовлетворяет всем этим требованиям, но и интегрирован с таск-менеджером.

С необходимостью создания подобного продукта Глеб столкнулся после перехода в компанию Involta, разработчика продуктов в области высоконагруженных систем. Глеб Шкрябин поочередно занимал здесь позиции старшего бэкенд-разработчика, тимлида и техлида. Программа, которая требовалась для структурирования рабочих процессов и повышения продуктивности команды, должна была объединить в себе функции мессенджера и таск-менеджера по образцу Slack + Jira.

«Главной целью при разработке, — рассказывает Глеб, — было упростить коммуникацию внутри компании, так чтобы сотрудники могли легко общаться с коллегами, а руководство — контролировать выполнение задач».

Involta Messenger, который Глеб Шкрябин создал как архитектор и единственный разработчик бэкенда, — комплексный инструмент, охватывающий все ключевые платформы: iOS, Android, Web. Для анализа продуктивности сотрудников здесь используются нейронные сети и искусственный интеллект. Среди ключевых функций уникальной платформы — трекинг задач, позволяющий анализировать эффективность работы сотрудников по более чем 20 показателям, smart-уведомления, которые отправляются конкретным участникам того или иного проекта, и защищенное шифрование сообщений для предотвращения утечек информации.

Внедрение инновационного инструмента помогло значительно упростить и ускорить рабочие процессы. За несколько лет, которые прошли с момента внедрения приложения, разработанного Глебом Шкрябиным, компания превратилась в крупный холдинг с представительством в нескольких странах. Однако Involta Messenger до сих пор используется ее сотрудниками как основной таск-трекер и мессенджер.

Платформа для управления и оптимизации рекламных кампаний в режиме онлайн-аукционов

Работа систем онлайн-торгов для размещения рекламы, таких как RTB (Real-Time Bidding), критически зависима от высоконагруженных систем. За миллисекунды такая платформа должна обработать колоссальное число запросов на показ рекламы, определить наиболее подходящие, принять ставки, выбрать победителя и отобразить рекламу. На счету Глеба Шкрябина — площадка для управления и оптимизации рекламных кампаний в режиме онлайн-аукционов BidVol, которую он разработал как технический лидер команды.

«Ключевыми задачами при подготовке проекта, — говорит Глеб, — были создание архитектуры бэкенда и разработка математической модели для онлайн-аукционов».

Особое внимание Глеб уделил изучению различных протоколов и прогнозированию нагрузки на систему. Это позволило заранее выбрать подходящие технологии, чтобы по мере необходимости добавлять мощность, обеспечивая стабильную работу инфраструктуры при высокой нагрузке.

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

Система аналитики и мониторинга производительности высоконагруженных баз данных

Рост любого современного бизнеса связан с увеличением объема данных и нагрузки на системы, что часто приводит к проблемам: существующие инструменты безопасности оказываются недостаточно эффективными, а уровень производительности не справляется с растущей инфраструктурой. В результате — сбои и финансовые потери. Одна из разработок Глеба Шкрябина — система аналитики и мониторинга производительности высоконагруженных баз данных — представляет собой инструмент, позволяющий избежать этих рисков.

Этот проект Глеб создал для BrainRocket — кипрской IT-компании с интернациональной командой специалистов и офисами в разных странах мира, которая обещает превратить страну в новый европейский IT-хаб. Глеб Шкрябин был приглашен сюда три года назад в качестве старшего бэкенд-разработчика и продолжает работать сейчас, только теперь уже как Staff Engineer.

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

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

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

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

Стремление поделиться своим опытом с коллегами привело Глеба Шкрябина к написанию статей, посвященных тонкостям создания высоконагруженных систем. Публикации на актуальные темы появились в таких научных журналах, как «Вестник науки» и «Актуальные исследования». Инновационная система аналитики и мониторинга производительности высоконагруженных баз данных также была высоко оценена IT-экспертами — благодаря своей разработке Глеб Шкрябин стал лауреатом премии «Время инноваций — 2024». Этой наградой ежегодно отмечают авторов самых ярких и оригинальных проектов, способствующих развитию и внедрению инноваций в разных сферах.

Без высоконагруженных систем сегодня сложно представить развитие как стартапов, так и крупного бизнеса. Производительность, отказоустойчивость, безопасность — внедрение и четкая работа High-Load Systems позволяет удовлетворить все эти ключевые требования, помогая компаниям наращивать мощности по мере роста числа пользователей и объемов данных.