Eine solche Frage könnte ein Hinweis auf eine schlechte architektonische Aufteilung in Mikrodienste sein. Von was sind Microservices? ::
Diese Services basieren auf Geschäftsfunktionen und können
unabhängig voneinander von vollautomatisierten Bereitstellungsmaschinen bereitgestellt werden.
Der entscheidende Punkt, der in einem solchen Fall übersehen wird, wäre ihr unabhängig einsetzbarer Aspekt.
Der Punkt könnte auch einfach missverstanden werden: Es bedeutet nicht unbedingt, dass jeder Mikrodienst in der Lage sein sollte, seine gesamte Funktionalität für sich selbst auszuführen, sondern nur, dass er ordnungsgemäß entlassen werden kann, wenn ein anderer Mikrodienst, von dem seine Funktionalität abhängt, nicht verfügbar ist. Vielleicht behalten Sie den Überblick über "Aufgaben" für die spätere Ausführung, wenn dieser Microservice verfügbar wird.
Aus einer anderen Perspektive betrachtet: Die Behandlung der Nichtverfügbarkeit externer Dienstabhängigkeiten sollte eigentlich Teil jeder Mikroservice-Funktionalität sein - daher kann man den Mikroservice auch dann als voll funktionsfähig betrachten, wenn seine Laufzeitabhängigkeiten nicht erfüllt sind :)
Ich denke, es ist erwähnenswert, dass ich mich in den obigen Kommentaren auf die Nichtverfügbarkeit von Microservices beziehe, unabhängig von deren Grund, sei es die Reihenfolge der Bereitstellungsabhängigkeit oder etwas anderes (z. B. Ausfälle).
Eine andere zu berücksichtigende Sache wäre der feinere Unterschied zwischen der Bereitstellung der Mikrodienste und ihrer Umsetzung durch Umschalten des Datenverkehrs auf sie. Das Wechseln des Datenverkehrs ist häufig schneller als die Bereitstellung selbst. Daher kann die Verfügbarkeit auf der gesamten Systemebene erhöht werden, indem zuerst alle Mikrodienste bereitgestellt werden und erst dann die Verkehrsumschaltung für alle ausgeführt wird.