私は100のAPIを持っていて、各APIは6つのデータベースと話しています。私はステータスエンドポイントを構築する2つのアプローチを考えています。消費者はビジネスニーズを実行するために100個のAPIすべてにアクセスする必要はなく、必要に応じて1個または2個のAPIにアクセスできます。api statusエンドポイントを実装するベストプラクティスは何ですか?
1)各apiには独自の/ステータスエンドポイントがあり、そのエンドポイントは使用している6つのデータベースすべてとの接続をチェックし、失敗した場合は正常でない場合は正常に戻ります。この場合、APIコンシューマは消費するステータスエンドポイントのみにアクセスします。この場合、特定のAPIを消費した人は、/状態のエンドポイントにアクセスして健康状態をチェックします。
2)このケースでは、コンシューマは、6つのデータベースのいずれかがダウンしていて、api自体がダウンしている場合に基づいて、100個のapisのステータスを含む1つのエンドポイントのみにアクセスします。データベースがダウンしていて、その特定のAPIのステータスが不健全で、データベースが稼動していてapiがアップしていれば、apiは正常であり、消費者はこの単一のエンドポイントから必要に応じて個々のステータスまたはすべてのapiのステータスを取得できます。各apiには独自の内部/ステータスエンドポイントがあり、依存する6つのデータベースのステータスに関係なく正常に戻ります。 6つのデータベースすべてに6つのステータス・エンドポイントを追加し、接続性をチェックし、それ以外の場合は正常でない場合は正常に戻ります。
これらの2つの中から最良のアプローチは何でしょうか?
私は本当にあなたのすべての入力に感謝します。