«Отложенные данные» — наш механизм обеспечения консистентностиАрхитектуры, масштабируемость
Backend-разработчик в команде «Личный кабинет». Общий стаж работы backend-разработчиком 6 лет, в 2ГИС работает 2 года. Интересы - улучшение проекта, делая его более отказоустойчивым и понятным, изучение новых подходов и технологий.
Пять лет мы жили с самописной шиной для обмена данными — теряли сообщения и страдали от однопоточного импорта. Сегодня мы используем Apache Kafka и Golang для обмена данными между сервисами.
Расскажу, как механизм «отложенных данных» помог нам организовать сбор информации от десятка команд. От десятка команд, чья очередность выгрузки непредсказуема. Поделюсь, как нам удалось построить зависимости и поставлять данные констистентно и в срок.