Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Moscow Python Meetup №98 Алексей Лавриненко (Ф...

Moscow Python Meetup №98 Алексей Лавриненко (Фаст Софт, Team Lead Python). Недописанная Кафкой Сага

О внедрении паттерна Saga в HoReCa FoodTech для исправления интеграции с блокирующимся кассовым оборудованием в ресторанах. Как это спасло нашу тех.поддержку. Какие уроки мы вынесли. И почему же Кафка не дописал(а) свою сагу…

Видео: https://moscowpython.ru/meetup/98/kafka-saga/

Moscow Python: http://moscowpython.ru
Курсы Learn Python: http://learn.python.ru
Moscow Python Podcast: http://podcast.python.ru
Заявки на доклады: https://bit.ly/mp-speaker

Moscow Python Meetup

January 29, 2025
Tweet

More Decks by Moscow Python Meetup

Other Decks in Programming

Transcript

  1. Вступление Меня зовут Алексей. Я – Team Lead команды разработки

    МП Токио Сити • Более 4 лет коммерческой разработки на Python • 3 года опыта в FoodTech • 2 года код ревью на курсе Middle Python Dev. Я.Практикум • 1 год опыта в позиции Team lead
  2. Студия разработки Блиц Продуктовая IT-компания с 2005 г. Foodtech WEB-Разработка:

    e-commerce, web-сервисы, корпоративные порталы Автоматизация ресторана: внедрение r-keeper, iiko WHITE-LABEL: готовое приложение без разработки Техническая поддержка и администрирование сервисов 1С Разработка и поддержка Telegram боты: создание чат ботов RPA: разработка и внедрение программных роботов Внедрение CRM-систем: разработка, развитие и интеграции Мобильная разработка: приложения под ключ 80 ресторанов 40 dark-kitchen работают с нашими продуктами
  3. О чём доклад? - Об исследовании проблемы обеспечения транзакции в

    распределенной системе • И, собственно, почему Кафка не дописал свою Сагу… - О реализации и сложностях в процессе приготовления паттерна - О первом погружение в паттерн Saga
  4. VCard – сервис для предоставления преимуществ программ лояльности в ресторанах

    Возможности: - Копить и тратить бонусы - Скидки в праздники - Скидки на акционные позиции - Отказ от пластика Виртуальная карта
  5. - Идемпотентность при слабой сети. И даже не одно лишь

    но… Нарушена консистентность системы - Блокировка заказа официантом. - Задержка перерасчета при нагрузке.
  6. Saga.Handle Group Event - Сложнее всего в транзакции управлять обработкой

    всех ответов от оборудования кассы. - Был реализован Handle Group Event
  7. Итоги: - Качественное повышение отказоустойчивости системы - Снижение количества обращений

    на 94.20% - Довольные клиенты, которые любят возвращаться в наши рестораны