配置屬性

以下是配置屬性列表。

名稱 預設值 描述

spring.cloud.compatibility-verifier.compatible-boot-versions

3.4.x

Spring Boot 依賴的預設接受版本。如果不想指定具體值,可以使用 {@code x} 表示補丁版本。例如:{@code 3.4.x}

spring.cloud.compatibility-verifier.enabled

false

啟用 Spring Cloud 相容性驗證的建立。

spring.cloud.config.allow-override

true

標誌,指示是否可以使用 {@link #isOverrideSystemProperties() systemPropertiesOverride}。設定為 false 可防止使用者意外更改預設值。預設為 true。

spring.cloud.config.initialize-on-context-refresh

false

標誌,用於在上下文重新整理事件上初始化引導配置。預設為 false。

spring.cloud.config.override-none

false

標誌,指示當 {@link #setAllowOverride(boolean) allowOverride} 為 true 時,外部屬性應具有最低優先順序,不應覆蓋任何現有屬性源(包括本地配置檔案)。預設為 false。這僅在使用配置優先引導時生效。

spring.cloud.config.override-system-properties

true

標誌,指示外部屬性是否應覆蓋系統屬性。預設為 true。

spring.cloud.decrypt-environment-post-processor.enabled

true

啟用 DecryptEnvironmentPostProcessor。

spring.cloud.discovery.client.composite-indicator.enabled

true

啟用發現客戶端組合健康指標。

spring.cloud.discovery.client.health-indicator.enabled

true

spring.cloud.discovery.client.health-indicator.include-description

false

spring.cloud.discovery.client.health-indicator.use-services-query

true

指標是否應使用 {@link DiscoveryClient#getServices} 來檢查其健康狀況。當設定為 {@code false} 時,指標會改用更輕量的 {@link DiscoveryClient#probe()}。這在大型部署中很有用,因為返回的服務數量可能會導致操作不必要地變得沉重。

spring.cloud.discovery.client.simple.instances

spring.cloud.discovery.client.simple.local.host

spring.cloud.discovery.client.simple.local.instance-id

spring.cloud.discovery.client.simple.local.metadata

spring.cloud.discovery.client.simple.local.port

0

spring.cloud.discovery.client.simple.local.secure

false

spring.cloud.discovery.client.simple.local.service-id

spring.cloud.discovery.client.simple.local.uri

spring.cloud.discovery.client.simple.order

spring.cloud.discovery.enabled

true

啟用發現客戶端健康指標。

spring.cloud.features.enabled

true

啟用 features 端點。

spring.cloud.httpclientfactories.apache.enabled

true

啟用 Apache Http Client factory bean 的建立。

spring.cloud.httpclientfactories.ok.enabled

true

啟用 OK Http Client factory bean 的建立。

spring.cloud.hypermedia.refresh.fixed-delay

5000

spring.cloud.hypermedia.refresh.initial-delay

10000

spring.cloud.inetutils.default-hostname

localhost

預設主機名。在發生錯誤時使用。

spring.cloud.inetutils.default-ip-address

127.0.0.1

預設 IP 地址。在發生錯誤時使用。

spring.cloud.inetutils.ignored-interfaces

將被忽略的網路介面的 Java 正則表示式列表。

spring.cloud.inetutils.preferred-networks

將被優先考慮的網路地址的 Java 正則表示式列表。

spring.cloud.inetutils.timeout-seconds

1

計算主機名的超時時間,以秒為單位。

spring.cloud.inetutils.use-only-site-local-interfaces

false

是否僅使用具有站點本地地址的介面。有關詳細資訊,請參閱 {@link InetAddress#isSiteLocalAddress()}。

spring.cloud.loadbalancer.cache.caffeine.spec

用於建立快取的規範。有關規範格式的更多詳細資訊,請參閱 CaffeineSpec。

spring.cloud.loadbalancer.cache.capacity

256

初始快取容量,以 int 表示。

spring.cloud.loadbalancer.cache.enabled

true

啟用 Spring Cloud LoadBalancer 快取機制。

spring.cloud.loadbalancer.cache.ttl

35s

生存時間 (TTL) - 從記錄寫入開始計時,之後快取條目過期,表示為 {@link Duration}。屬性 {@link String} 必須符合 Spring Boot <code>StringToDurationConverter</code> 中指定的相應語法。@see <a href= "https://github.com/spring-projects/spring-boot/blob/master/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/StringToDurationConverter.java">StringToDurationConverter.java</a>

spring.cloud.loadbalancer.call-get-with-request-on-delegates

true

如果此標誌設定為 {@code true},則將實現 {@code ServiceInstanceListSupplier#get(Request request)} 方法以呼叫 {@code DelegatingServiceInstanceListSupplier} 可分配類中尚未實現該方法的 {@code delegate.get(request)},但排除 {@code CachingServiceInstanceListSupplier} 和 {@code HealthCheckServiceInstanceListSupplier},它們應直接放置在透過網路執行例項檢索的供應商之後、任何基於請求的過濾之前。預設為 {@code true}。

spring.cloud.loadbalancer.clients

spring.cloud.loadbalancer.configurations

default

啟用預定義的 LoadBalancer 配置。

spring.cloud.loadbalancer.eager-load.clients

客戶端名稱。

spring.cloud.loadbalancer.enabled

true

啟用 Spring Cloud LoadBalancer。

spring.cloud.loadbalancer.health-check.initial-delay

0

HealthCheck 排程器的初始延遲值。

spring.cloud.loadbalancer.health-check.interval

25s

重新執行 HealthCheck 排程器的間隔。

spring.cloud.loadbalancer.health-check.interval

25s

重新執行 HealthCheck 排程器的間隔。

spring.cloud.loadbalancer.health-check.path

應進行健康檢查請求的路徑。可以按 serviceId 設定。也可以設定 default 值。如果未設定,將使用 /actuator/health

spring.cloud.loadbalancer.health-check.port

應進行健康檢查請求的埠。如果未設定,則使用服務例項上請求服務可用的埠。

spring.cloud.loadbalancer.health-check.refetch-instances

false

指示例項是否應由 HealthCheckServiceInstanceListSupplier 重新獲取。如果例項可以更新且底層委託不提供持續的 flux,則可以使用此選項。

spring.cloud.loadbalancer.health-check.refetch-instances-interval

25s

重新獲取可用服務例項的間隔。

spring.cloud.loadbalancer.health-check.repeat-health-check

true

指示健康檢查是否應重複進行。如果定期重新獲取例項,將其設定為 false 可能很有用,因為每次重新獲取也會觸發健康檢查。

spring.cloud.loadbalancer.health-check.update-results-list

true

指示是否應將 {@code healthCheckFlux} 在每個已檢索到的活動 {@link ServiceInstance} 上發出。如果設定為 {@code false},則先將整個活動例項序列收集到一個列表中,然後再發出。

spring.cloud.loadbalancer.hint

允許設定傳遞給 LoadBalancer 請求的 <code>hint</code> 值,該值隨後可在 {@link ReactiveLoadBalancer} 實現中使用。

spring.cloud.loadbalancer.hint-header-name

X-SC-LB-Hint

允許設定用於傳遞提示以進行基於提示的服務例項過濾的 header 名稱。

spring.cloud.loadbalancer.retry.avoid-previous-instance

true

如果在 classpath 中存在 Spring-Retry,則啟用使用 RetryAwareServiceInstanceListSupplier 包裝 ServiceInstanceListSupplier bean。

spring.cloud.loadbalancer.retry.backoff.enabled

false

指示是否應應用 Reactor Retry 退避策略。

spring.cloud.loadbalancer.retry.backoff.jitter

0.5

用於設定 RetryBackoffSpec.jitter

spring.cloud.loadbalancer.retry.backoff.max-backoff

Long.MAX ms

用於設定 RetryBackoffSpec.maxBackoff

spring.cloud.loadbalancer.retry.backoff.min-backoff

5 ms

用於設定 RetryBackoffSpec#minBackoff

spring.cloud.loadbalancer.retry.enabled

true

啟用 LoadBalancer 重試。

spring.cloud.loadbalancer.retry.max-retries-on-next-service-instance

1

在下一個 ServiceInstance 上執行的重試次數。在每次重試呼叫之前選擇一個 ServiceInstance

spring.cloud.loadbalancer.retry.max-retries-on-same-service-instance

0

在同一個 ServiceInstance 上執行的重試次數。

spring.cloud.loadbalancer.retry.retry-on-all-exceptions

false

指示是否應嘗試對所有異常進行重試,而不僅僅是 retryableExceptions 中指定的異常。

spring.cloud.loadbalancer.retry.retry-on-all-operations

false

指示是否應嘗試對 HttpMethod.GET 以外的操作進行重試。

spring.cloud.loadbalancer.retry.retryable-exceptions

{}

應觸發重試的 ThrowableSet

spring.cloud.loadbalancer.retry.retryable-status-codes

{}

應觸發重試的狀態碼 Set

spring.cloud.loadbalancer.service-discovery.timeout

呼叫服務發現的超時時間(Duration)的字串表示。

spring.cloud.loadbalancer.stats.include-path

true

指示是否應將 {@code path} 新增到指標中的 {@code uri} 標籤。當使用 {@link RestTemplate} 執行具有高基數路徑的負載均衡請求時,建議將其設定為 {@code false}。

spring.cloud.loadbalancer.stats.micrometer.enabled

false

啟用 Spring Cloud LoadBalancer Micrometer 統計資訊。

spring.cloud.loadbalancer.sticky-session.add-service-instance-cookie

false

指示 LoadBalancer 是否應新增一個包含新選定例項的 cookie。

spring.cloud.loadbalancer.sticky-session.instance-id-cookie-name

sc-lb-instance-id

儲存首選例項 ID 的 cookie 名稱。

spring.cloud.loadbalancer.subset.instance-id

確定性子集劃分的例項 ID。如果未設定,將使用 {@link IdUtils#getDefaultInstanceId(PropertyResolver)}。

spring.cloud.loadbalancer.subset.size

100

確定性子集劃分的最大子集大小。

spring.cloud.loadbalancer.x-forwarded.enabled

false

啟用 X-Forwarded Headers。

spring.cloud.loadbalancer.zone

Spring Cloud LoadBalancer 區域。

spring.cloud.refresh.additional-property-sources-to-retain

重新整理期間要保留的額外屬性源。通常只保留系統屬性源。此屬性允許保留由 EnvironmentPostProcessors 等建立的屬性源。

spring.cloud.refresh.enabled

true

啟用重新整理範圍和相關功能的自動配置。

spring.cloud.refresh.extra-refreshable

true

要後處理到重新整理範圍內的 bean 的額外 bean 名稱或類名稱。

spring.cloud.refresh.never-refreshable

true

逗號分隔的 bean 名稱或類名稱列表,這些 bean 永遠不會被重新整理或重新繫結。

spring.cloud.refresh.on-restart.enabled

true

在啟動時啟用上下文重新整理。

spring.cloud.service-registry.auto-registration.enabled

true

是否啟用服務自動註冊。預設為 true。

spring.cloud.service-registry.auto-registration.fail-fast

false

如果沒有 AutoServiceRegistration,啟動是否失敗。預設為 false。

spring.cloud.service-registry.auto-registration.register-management

true

是否將管理端註冊為服務。預設為 true。

spring.cloud.util.enabled

true

啟用 Spring Cloud 工具 bean 的建立。