data-infra
Словарь ↗Реестр схем (schema registry)
Реестр схем — это центральный сервис, который хранит и версионирует схемы сообщений, идущих через ваши потоки событий или очереди сообщений. Поставщики регистрируют схему выпускаемых событий; потребители получают её, чтобы декодировать и проверять принимаемое. Чаще всего он ассоциируется с Kafka и форматами Avro, Protobuf и JSON Schema. Он решает проблему согласования изменений между слабосвязанными сервисами. В событийной системе поставщик и потребитель не вызывают друг друга напрямую — их связывает только формат сообщения. Без реестра поставщик, добавивший или переименовавший поле, может тихо сломать всех потребителей ниже по потоку. Реестр навязывает правила совместимости (обратную, прямую или полную), поэтому несовместимое изменение схемы отклоняется ещё до выката. SaaS-разработчикам с любой потоковой или pub/sub-архитектурой реестр позволяет безопасно развивать схемы событий по мере роста продукта. На практике: осознанно выбирайте режим совместимости — обратная совместимость (новые потребители читают старые данные) обычно по умолчанию — и рецензируйте изменения схем так же строго, как изменения публичного API.
Похожие термины