.NET .NET Aspire 整合概觀
.NET Aspire 整合是一套精選的 NuGet 套件,可協助整合雲端原生應用程式與突出服務和平臺,例如 Redis 和 PostgreSQL。 每個整合都會透過自動布建或標準化的組態模式,提供基本的雲端原生功能。
提示
一律努力使用最新版本的 .NET.NET Aspire 整合,以利用最新的功能、改進和安全性更新。
整合責任
大部分 .NET.NET Aspire 整合是由兩個不同的連結庫所組成,每個連結庫都有不同的責任。 一種類型資源存在於 應用主機 專案中,稱為 主機整合。 另一種整合類型代表用戶端庫,這些庫會連接到由主控整合所建模的資源,且稱為 用戶端整合。
主機代管整合
主機整合藉由配置資源(例如容器或雲端資源)或指向現有的系統實例(如本機 SQL 伺服器)來設定應用程式。 這些套件會建立各種服務、平臺或功能模型,包括快取、資料庫、記錄、記憶體和傳訊系統。
裝載整合會擴充 IDistributedApplicationBuilder 介面,讓 應用程式主機 專案能夠在其 應用程式模型中表示資源。 官方 主機整合 NuGet 套件 會以 aspire
、integration
和 hosting
標記。 除了官方的主機託管整合外,社群還為各種服務和平臺建立了託管整合,這是社群工具包的一部分。
如需有關創建自定義 裝載整合的詳細資訊,請參閱 創建自定義 .NET.NET Aspire 裝載整合。
Client 整合
Client 整合將客戶端程式庫連接到 依賴注入、定義配置架構,並增加 健康檢查、韌性,以及 遙測。
.NET
.NET Aspire 用戶端整合庫的前綴為 Aspire.
,並包括其所整合的完整套件名稱,例如 Aspire.StackExchange.Redis
。
這些套件將設定現有的客戶端函式庫,以便連接到託管整合。 它們會擴充 IHostApplicationBuilder 介面,讓使用者專案,例如 Web 應用程式或 API,來使用連線的資源。 官方 用戶端整合 NuGet 套件 會以 aspire
、integration
和 client
標記。 除了官方用戶端整合之外,社群已建立各種服務和平臺的用戶端整合,作為社群工具組的一部分。
如需建立自訂用戶端整合的詳細資訊,請參閱 建立自訂 .NET.NET Aspire 用戶端整合。
主機代管與客戶端整合之間的關聯性
在一起使用時,裝載和用戶端整合最好,但 不會 結合,而且可以分開使用。 有些主機集成沒有對應的用戶端集成。 設定是讓主機整合與用戶端整合協同運作的關鍵。
請考慮下圖,描述裝載與用戶端整合之間的關聯性:
應用程式宿主專案是用來執行託管整合的地方。 組態,特別是環境變數,會嵌入到專案、可執行檔和容器中,讓客戶端整合可以連接到宿主整合。
整合功能
當您將用戶端整合新增至 .NET.NET Aspire 方案內的專案時,服務預設會自動套用至該專案;表示會參考服務預設值專案,並呼叫 AddServiceDefaults
擴充方法。 這些預設值是設計成在大部分情況下都能正常運作,而且可以視需要自定義。 套用下列服務預設值:
可檢視性和遙測:自動設定記錄、追蹤和計量組態:
健康情況檢查:公開 HTTP 端點以提供應用程式的基本可用性和狀態資訊。 健康情況檢查可用來影響容器協調器、負載平衡器、API 閘道和其他管理服務所做的決策。
復原能力:系統回應失敗的能力,仍然保持運作。 復原延伸超過防止失敗的範圍,包括復原和重新建構雲端原生環境回到狀況良好的狀態。
版本控制考量
主機和用戶端整合在每個版本中更新,以最新穩定版本的依賴資源為目標。 當容器映像更新為新的映像版本時,主機整合會同步更新到這些新版本。 同樣地,當相依用戶端連結庫有新的 NuGet 版本可用時,對應的用戶端整合會更新為新版本。 這可確保應用程式可以使用最新的功能和安全性更新。
當相依賴的資源發生重大變更時,整合可能會暫時分割成版本相依的套件,以簡化跨越重大變更的版本更新。 如需詳細資訊,請參閱 這類重大變更的第一個範例。
官方整合
.NET .NET Aspire 提供許多整合,可協助您建置雲端原生應用程式。 這些整合的設計目的是要與 .NET.NET Aspire 應用程式主機和用戶端連結庫順暢地搭配運作。 下列各節詳述與雲端無關、Azure特定、Amazon Web Services (AWS) 和 Community Toolkit 整合。
與雲端無關的整合
下一節詳細說明與各自檔與 NuGet 套件連結的雲端無關 .NET.NET Aspire 整合,並提供每個整合的簡短描述。
如需在 .NET Aspire中使用 Visual Studio 整合功能的詳細資訊,請參閱 Visual Studio 工具。
Azure 整合
Azure 整合會將應用程式設定為使用 Azure 資源。 這些裝載整合可在 Aspire.Hosting.Azure.*
NuGet 套件中使用,而其用戶端整合可在 Aspire.*
NuGet 套件中使用:
Amazon Web Services (AWS) 主機代管服務整合
整合文件與 NuGet 套件 | 描述 |
---|---|
-
深入瞭解:📄 AWS 主機代管 - 託管:📦Aspire.託管.AWS - Client:不適用 |
用於建模 AWS 資源的程式庫。 |
如需詳細資訊,請參閱 GitHub:Aspire。Hosting.AWS 連結庫。
Community Toolkit 整合
注意
社群工具組整合是由 .NET.NET Aspire 社群所驅動和維護。 .NET .NET Aspire 小組未正式支持這些整合。
如需詳細資訊,請參閱 .NET.NET Aspire Community Toolkit。