Spring Cloud Azure 設定
本文適用於:✅ 4.19.0 ✅ 5.19.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 識別符來設定驗證。 |
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 Key Vault 憑證 | spring.cloud.azure.keyvault.certificate | Key Vault 憑證組態屬性 |
Azure Key Vault 秘密 | spring.cloud.azure.keyvault.secret | Key Vault 秘密組態屬性 |
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 可讓您定義套用至命名空間中所有 Azure SDK 的屬性 spring.cloud.azure
。
下表列出全域屬性:
財產 | 描述 |
---|---|
spring.cloud.azure.client | 設定傳輸用戶端;預設會套用至所有 Azure SDK。 |
spring.cloud.azure.credential | 預設會設定所有 Azure SDK Microsoft Entra 識別碼的驗證。 |
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
重試 Key Vault 屬性來源的組態
下列組態範例示範如何設定 Azure Key Vault 秘密用戶端的重試行為:
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