- Опубликовано
Не ломаем прод по пятницам: как сделать интеграции предсказуемыми?
- Автор
- Имя
- Максим | Системный анализ
- Telegram
- Максим | Системный анализ349 подписчиков96 постовКак войти в IT через системный анализ и получить оффер от 200к+. Опыт Senior аналитика из топ-банков. Разборы, практика, собесы, техника мышления аналитика. Бесплатная консультация - в закрепе.
Кратко
Не ломаем прод по пятницам: как сделать интеграции предсказуемыми?Попросили изменить всего одно поле, а после релиза вдруг падает прод. Знакомая...
Не ломаем прод по пятницам: как сделать интеграции предсказуемыми?
Попросили изменить всего одно поле, а после релиза вдруг падает прод. Знакомая история? Schema Registry позволяет пресекать такое на корню.
Schema Registry - это общий справочник схем сообщений для всех сервисов. Чаще всего работает в связке с Kafka. В ней каждый сервис регистрирует и обновляет схемы. Если обновление схемы заденет потребителя, то Schema Registry не даст зарегистрировать такое обновление, и разработчик поймет, что начать релиз нужно с консьюмера.
Однако стандартный Schema Registry позволяет описать далеко не всё. Поэтому в новых версиях используется Data Conctracts.
В них можно:
Указать сложные типы данных (например uuid, email, IP)
Описать диапазон значений у чисел
Задавать регулярки для строк
Описывать логику для нескольких полей одновременно
О чем важно подумать системному аналитику, на проекте которого используется Schema Registry:
В каком формате описывается schema
Насколько строгая проверка совместимости контрактов используется
Какие дефолтные значения задавать для новых полей, чтобы не упасть при релизе
Насколько подробно описывать data contracts? Каждая проверка влияет на скорость публикации сообщения
@maximbelovmentor








