Система фоновой обработки с оптимизацией часовых поясов
Разработал высокопроизводительную платформу выполнения фоновых задач, ориентированных на процессинг и анализ данных, обрабатывающую миллионы записей с адаптивным планированием с учётом часовых поясов и оптимизированной групповой обработкой данных
К нам обратилась финтех компания, ориентированная на бухгалтерские системы, с серьёзными проблемами их системы выполнения фоновых задач по процессингу и анализу данных. Компания работала на европейских рынках и расширялась на американский, но их существующая система не была в состоянии быстро подстраиваться под компании в разных часовых поясах. Клиенты получали неконсистентные данные и уведомления о будущих платежах в неподходящее время, что приводило к жалобам и несоответствию регулятивным требованиям. Это было особенно заметно на разнице между CET и американскими часовыми поясами, при росте объёма данных - в среднем один клиент процессил несколько десятков миллионов записей.
Наша команда провела детальный анализ архитектуры и выявила критические недостатки: отсутствовала логика планирования с учётом часовых поясов, система групповой обработки данных была неэффективной и создавала узкие места, механизмы восстановления после сбоев были примитивными, мониторинг не обеспечивал достаточную видимость для проактивного управления, архитектура не поддерживала требования различных европейских и американских регулятивных систем.
Мы спроектировали и реализовали систему выполнения фоновых задач с адаптивными алгоритмами групповой обработки, которые автоматически оптимизируют выполнение на основе нагрузки сервера и региональных окон обработки. Внедрили сложную логику повторных попыток с экспоненциальными стратегиями отсрочки и комплексный мониторинг с Datadog. Результатом стала система, обрабатывающая 3М+ операций ежедневно с учётом часовых поясов и высочайшей надёжностью.
Обязанности
- Спроектировал и реализовал масштабируемую систему выполнения фоновых задач с учётом часовых поясов, обрабатывающую миллионы проводок ежедневно в европейских и американских регионах
- Создал адаптивный механизм групповой обработки данных, который динамически выделяет необходимые ресурсы и порождает дополнительные потоки для выполнения фоновых задач, обеспечив совместимость между Sidekiq и новой системой выполнения
- Разработал сложную логику повторных попыток с экспоненциальными стратегиями отсрочки для обеспечения надёжной обработки даже во время сбоев инфраструктуры
- Реализовал комплексные решения мониторинга с Datadog, которые отслеживают паттерны выполнения по регионам и предоставляют раннее предупреждение о потенциальных узких местах
- Сотрудничал с заинтересованными сторонами бизнеса для обеспечения соответствия системы сложным регулятивным требованиям в различных европейских и американских рынках
Ключевые достижения
- Повысил пропускную способность обработки при снижении инфраструктурных расходов благодаря оптимизированным алгоритмам групповой обработки данных
- Клиенты перестали наблюдать неконсистентные данные в рабочее время, а уведомления стали приходить в их рабочие часы
- Обеспечил стабильную работу системы с возможностью обработки десятков миллионов записей на клиента благодаря адаптивному управлению ресурсами и многопоточности
- Система позволяла динамически изменять количество необходимых ресурсов для каждого клиента в отдельности при работе между европейскими и американскими часовыми поясами
- Спроектировал систему с такой масштабируемостью, что она легко адаптировалась к увеличению объёма обработки по мере расширения компании на американский рынок

Компания
NDA
Роль
Разработчик основного функционала
Продолжительность
Часть работы с 10/2022 - 08/2024