Совместимость версий микросервисов с общим продуктом

#architecture #microservices #semantic-versioning

Вопрос:

У нас возникла ситуация с обеспечением обратной совместимости в микросервисах. У нас есть монолитный продукт, который имеет выпущенные версии для производства, а также версию для разработки.Этот продукт является потребителем различных микросервисов, у которого есть собственная стратегия управления версиями, выпуск и разработка, но версии выпуска разные.

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

Микросервисы являются многопользовательскими по своей природе.

например, **Версия продукта: 5.5.10 ** — Версия микросервиса: 2.3.0 Здесь 5.5-основной выпуск, а 2.3.0-основная версия, еще не выпущенная.

5.6.02.3.0 это идеальная комбинация, но практически всех клиентов, которые используют 5.5, нельзя довести до 5.6.0, но микросервисы будут переведены в основную версию, как только выйдет 5.6.0.

Поэтому из-за этого требуется обратная совместимость для версии микрослужбы 2.3.0, которая является основной версией.

Является ли это правильным шаблоном, которому следуют? или инфраструктура расположена неправильно?

Комментарии:

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