コンテンツにスキップ

Aspire とは何ですか?

Aspire は、分散アプリケーションの構築、実行、デバッグ、デプロイを効率化します。 アプリケーションは、サービス、データベース、フロントエンドの集合体として構成され、本番環境ではそれらがシームレスに連携して動作しますが、開発時には個別に起動し、接続する必要があります。

Aspire を使えば、複雑な設定を不要にする統合ツールチェーンにより、ローカルでのデバッグが容易になります。 単一のコマンドで、アプリケーション全体を即座に起動・デバッグできます。

デプロイの準備ができたら、Aspire を使って Kubernetes、クラウド、または自社サーバーなど、あらゆる環境に公開できます。 さらに高い拡張性を備えており、お好みのツールやサービスを簡単に統合できます。

  • 統合された開発体験: 単一のコマンドで、分散アプリケーション全体を起動・デバッグできます。
  • コードファーストの構成: 複雑な設定ファイルは不要で、アプリケーションのアーキテクチャをコードで定義できます。
  • ローカル オーケストレーション: 開発時のサービス起動、依存関係、接続を自動的に管理します。
  • 柔軟なデプロイ: 同じアーキテクチャ定義のまま、Kubernetes、クラウドプロバイダー、自社サーバーへデプロイできます。
  • 高い拡張性: 豊富な連携エコシステムを通じて、お好みのツールやサービスと統合できます。

Aspire は、コードファーストのアプローチ でアプリケーションのアーキテクチャを定義します。 複雑な設定ファイルを管理する代わりに、サービス、データベース、依存関係をコード上で直接記述します。この方法には、次のような利点があります:

  • 型安全性: コンパイル時に構成ミスを検出できます。
  • 入力補完のサポート: アーキテクチャ定義時に、コード補完やドキュメントを利用できます。
  • バージョン管理: インフラ定義をコードと一緒に管理できます。
  • リファクタリング: 使い慣れた開発ツールで、アプリケーションのアーキテクチャを再構成できます。

Aspire がどのようにアプリケーションを支えているのかについては、AppHostとは?をご覧ください。

Aspire は、開発環境と本番環境の間にあるギャップを埋めます:

  • 開発環境: 依存関係管理やサービス検出を自動化し、サービスをローカルで実行できます。
  • 本番環境: 同じアーキテクチャ定義を、さまざまなクラウド プラットフォームやオーケストレーターにデプロイできます。
  • 一貫性: ローカルの開発環境が、本番環境のトポロジと一致することを保証します。

Aspire は、既存のデプロイ ワークフローを置き換えるものではありません。環境をまたいでアプリケーション アーキテクチャを一貫した方法で定義・管理できるようにすることで、それらを強化します。

詳しくは、パイプラインとアプリのトポロジーをご覧ください。