Популярный выбор архитектуры высокого уровня в современной программе - это система микросервисов на основе REST. Это имеет несколько преимуществ, таких как слабая связь, простота повторного использования, ограниченное ограничение на технологии, которые можно использовать, высокая масштабируемость и т. Д.
Но одна из проблем, которые я предвижу в такой архитектуре, заключается в плохой видимости зависимостей приложения. Например, допустим, у меня есть приложение, которое ежедневно использует один набор вызовов REST. Это приложение также использует второй набор вызовов REST, но только раз в квартал. Если бы я просканировал журналы за последнюю неделю, я бы увидел все ежедневные дневники, но, скорее всего, не увидел бы ежеквартальных звонков. Когда приходит время для рефакторинга, ежеквартальные звонки подвергаются высокому риску прерывания.
Какие шаблоны или инструменты можно использовать для снижения этого риска и обеспечения большей наглядности в отношении слабозависимой архитектуры?