Eine beliebte High-Level-Architektur in modernen Programmen ist ein REST-basiertes Microservices-System. Dies hat mehrere Vorteile wie lose Kopplung, einfache Wiederverwendung, begrenzte Einschränkung der verwendbaren Technologien, hohe Skalierbarkeit usw.
Eines der Probleme, die ich in einer solchen Architektur sehe, ist die schlechte Sichtbarkeit der Abhängigkeiten einer Anwendung. Angenommen, ich habe eine Anwendung, die täglich einen Satz REST-Aufrufe verwendet. Diese Anwendung verwendet auch einen zweiten Satz von REST-Aufrufen, jedoch nur einmal im Quartal. Wenn ich die Protokolle der letzten Woche scannen würde, würde ich alle täglichen Kalorien sehen, aber ich würde wahrscheinlich nicht die vierteljährlichen Anrufe sehen. Wenn es um die Umgestaltung geht, besteht für die vierteljährlichen Anrufe ein hohes Bruchrisiko.
Welche Muster oder Werkzeuge können verwendet werden, um dieses Risiko zu verringern und einen besseren Einblick in die Abhängigkeiten einer lose gekoppelten Architektur zu erhalten?