このような質問は、マイクロサービスへのアーキテクチャのスライスが不十分であることを示している可能性があります。Microservicesは何ですか?:
これらのサービスはビジネス機能を
中心に構築されており、完全に自動化された展開機構によって個別に展開できます。
このような場合に見逃される重要な点は、それらの独立して展開可能な側面です。
ポイントは、単に誤解されている可能性もあります。それは、各マイクロサービスがそれ自体で機能全体を実行できる必要があることを必ずしも意味するのではなく、その機能が依存する他のマイクロサービスが利用できない場合に正常にベイルできることを意味します。おそらく、そのマイクロサービスが利用可能になったときに、後で実行するために「todo」のものを追跡します。
別の観点から見ると、外部サービスの依存関係の利用不可の処理は、実際には各マイクロサービス機能の一部である必要があります。そのため、ランタイムの依存関係が満たされていない場合でも、マイクロサービスは完全に機能していると考えることができます。
上記のコメントでは、デプロイメントの依存関係の順序やその他の機能(停止など)にかかわらず、理由に関係なくマイクロサービスが利用できないことを指摘していることは注目に値します。
考慮すべきもう1つのことは、マイクロサービスをデプロイすることと、トラフィックをそれらに切り替えることでマイクロサービスを実行することとの細かい違いです。多くの場合、トラフィックの切り替えはデプロイ自体よりも速いため、最初にすべてのマイクロサービスをデプロイし、その後すべてのマイクロサービスに対してトラフィックの切り替えを実行することで、システムレベル全体の可用性を向上させることができます。