Spring Cloud Azure 設定
本文適用于: ✔️版本 4.14.0 ✔️ 5.8.0
本文說明所有 Spring Cloud Azure 萬用群組態屬性。
每個 Azure 服務 SDK 的設定
大部分的 Azure 服務 SDK 可依傳輸類型分成兩個類別:HTTP 型或 AMQP 型。 所有 SDK 都有通用的屬性,例如驗證主體和 Azure 環境設定,或 HTTP 型用戶端通用的屬性,例如記錄層級來記錄 HTTP 要求和回應。 在 Spring Cloud Azure 4.0 中,我們新增了您可以為每個 Azure 服務指定的五個常見組態屬性類別。
下表列出多個服務通用的屬性:
屬性 | 說明 |
---|---|
spring.cloud.azure.azure-service.client | 在一個 Azure 服務 SDK 底下設定傳輸用戶端。 |
spring.cloud.azure.azure-service.credential | 使用一個 Azure 服務 SDK 的 Microsoft Entra ID 設定驗證。 |
spring.cloud.azure.azure-service.profile | 設定一個 Azure 服務 SDK 的 Azure 雲端環境。 |
spring.cloud.azure.azure-service.proxy | 設定一個 Azure 服務 SDK 的 Proxy 選項。 |
spring.cloud.azure.azure-service.retry | 設定適用于一個 Azure 服務 SDK 的重試選項。 重試選項支援 SDK 的一部分,沒有 spring.cloud.azure.cosmos.retry。 |
自 Spring Cloud Azure 4.0 以來,組態屬性的前置詞已整合至 spring.cloud.azure
命名空間,讓設定屬性更一致且更直覺。 下表提供支援的 Azure 服務的前置詞快速檢閱:
Azure 服務 | 組態屬性前置詞 | 組態屬性連結 |
---|---|---|
Azure 應用程式設定 | spring.cloud.azure.appconfiguration | 應用程式組態組態屬性 |
Azure Cosmos DB | spring.cloud.azure.cosmos | Azure Cosmos DB 組態屬性 |
Azure 事件中樞 | spring.cloud.azure.eventhubs | 事件中樞組態屬性 |
Azure 金鑰保存庫 憑證 | spring.cloud.azure.keyvault.certificate | 金鑰保存庫憑證組態屬性 |
Azure 金鑰保存庫秘密 | spring.cloud.azure.keyvault.secret | 金鑰保存庫秘密組態屬性 |
Azure 服務匯流排 | spring.cloud.azure.servicebus | 服務匯流排組態屬性 |
Azure 儲存體 Blob | spring.cloud.azure.storage.blob | 儲存體 Blob 組態屬性 |
Azure 儲存體檔案共用 | spring.cloud.azure.storage.fileshare | 儲存體檔案共用組態屬性 |
Azure 儲存體佇列 | spring.cloud.azure.storage.queue | 儲存體佇列組態屬性 |
Azure 服務 SDK 的全域設定
您可以在不同的 Azure 服務之間共用一些屬性,例如使用相同的服務主體來存取 Azure Cosmos DB 和Azure 事件中樞。 Spring Cloud Azure 4.0 可讓您定義套用至命名空間 spring.cloud.azure
中所有 Azure SDK 的屬性。
下表列出全域屬性:
屬性 | 說明 |
---|---|
spring.cloud.azure.client | 設定傳輸用戶端;預設會套用至所有 Azure SDK。 |
spring.cloud.azure.credential | 根據預設,使用所有 Azure SDK 的 Microsoft Entra ID 設定驗證。 |
spring.cloud.azure.profile | 預設會為所有 Azure SDK 設定 Azure 雲端環境。 |
spring.cloud.azure.proxy | 根據預設,設定適用于所有 Azure SDK 用戶端的 Proxy 選項。 |
spring.cloud.azure.retry | 根據預設,設定適用于所有 Azure SDK 用戶端的重試選項。 |
注意
在每個 Azure 服務下設定的屬性將會覆寫全域設定。
設定範例
Azure 服務 SDK 的全域重試組態
下列範例示範如何設定任何 HTTP 或 AMQP 通訊協定型 Azure SDK 用戶端的重試行為:
spring.cloud.azure:
retry:
mode: exponential
exponential:
max-retries: 4
base-delay: PT0.0801S
max-delay: PT9S
重試金鑰保存庫屬性來源的組態
下列組態範例示範如何設定 Azure 金鑰保存庫 Secret 用戶端的重試行為:
spring.cloud.azure:
keyvault:
secret:
property-source-enabled: true
property-sources:
- endpoint: <your-Azure-Key-Vault-endpoint>
retry:
mode: exponential
exponential:
max-retries: 4
base-delay: PT0.0801S
max-delay: PT9S