Азамат Валитов
Разработчик @ Звук
Москва

Оптимизация архитектуры событийной системы на Python

  • Зал: 416. BackEnd
  • Категории: Разработка
  • Секции: Python

Описание:

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

Чем интересна данная тема для обсуждения? Это будет поверхностный обзор архитектуры событийных систем, с открытым для предложений окном.

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

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

Ручки сервиса будут просто проксировать приходящие Protobuf события так как они пришли в kafka, после чего отдельное приложение будет вычитывать сообщения и обрабатывать события.

О спикере

Азамат Валитов

Разработчик @ Звук
Москва

5 лет в коммерческой разработке, последние 2 года из них в Звуке. Занимаюсь backend-разработкой платформы аналитики данных и A/B экспериментов.

Хожу в зал, читаю книжки, смотрю аниме, сериалы фильмы, иногда играю в плейстейшн

Похожие доклады