配置属性

下方列出了配置属性。

名称 默认值 描述

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。这仅在使用 config first 引导时生效。

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 工厂 bean。

spring.cloud.httpclientfactories.ok.enabled

true

启用创建 OK Http Client 工厂 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.call-get-with-request-on-delegates

true

如果将此标志设置为 {@code true},则对于继承自 {@code DelegatingServiceInstanceListSupplier} 且尚未实现 {@code ServiceInstanceListSupplier#get(Request request)} 方法的类,该方法将调用 {@code delegate.get(request)}。但排除 {@code CachingServiceInstanceListSupplier} 和 {@code HealthCheckServiceInstanceListSupplier},它们应位于通过网络执行实例检索的供应商之后、进行任何基于请求的过滤之前。默认为 {@code true}。

spring.cloud.loadbalancer.clients

spring.cloud.loadbalancer.eager-load.clients

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

允许设置 <code>hint</code> 的值,该值会传递给 LoadBalancer 请求,随后可在 {@link ReactiveLoadBalancer} 实现中使用。

spring.cloud.loadbalancer.hint-header-name

X-SC-LB-Hint

允许设置用于传递提示的头名称,以便进行基于提示的服务实例过滤。

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.stats.include-path

true

指示 {@code path} 是否应添加到指标中的 {@code uri} 标签。当使用 {@link RestTemplate} 执行具有高基数路径的负载均衡请求时,建议将其设置为 {@code false}。

spring.cloud.loadbalancer.stats.micrometer.enabled

false

为负载均衡请求启用 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.openfeign.autoconfiguration.jackson.enabled

true

如果为 true,将为 Jackson 页面解码提供 PageJacksonModule 和 SortJacksonModule bean。

spring.cloud.openfeign.circuitbreaker.alphanumeric-ids.enabled

true

如果为 true,断路器 ID 将只包含字母数字字符,以便通过配置属性进行配置。

spring.cloud.openfeign.circuitbreaker.enabled

false

如果为 true,OpenFeign 客户端将使用 Spring Cloud CircuitBreaker 断路器进行包装。

spring.cloud.openfeign.circuitbreaker.group.enabled

false

如果为 true,OpenFeign 客户端将使用具有组的 Spring Cloud CircuitBreaker 断路器进行包装。

spring.cloud.openfeign.client.config

spring.cloud.openfeign.client.decode-slash

true

Feign 客户端默认不编码斜杠 / 字符。要改变此行为,将 decodeSlash 设置为 false

spring.cloud.openfeign.client.default-config

default

spring.cloud.openfeign.client.default-to-properties

true

spring.cloud.openfeign.client.refresh-enabled

false

启用 Feign 的选项值刷新功能。

spring.cloud.openfeign.client.remove-trailing-slash

false

如果为 {@code true},请求 URL 末尾的斜杠将被删除。

spring.cloud.openfeign.compression.request.content-encoding-types

内容编码列表(适用的编码取决于使用的客户端)。

spring.cloud.openfeign.compression.request.enabled

false

启用 Feign 发送的请求压缩。

spring.cloud.openfeign.compression.request.mime-types

[text/xml, application/xml, application/json]

支持的 mime 类型列表。

spring.cloud.openfeign.compression.request.min-request-size

2048

最小阈值内容大小。

spring.cloud.openfeign.compression.response.enabled

false

启用 Feign 响应压缩。

spring.cloud.openfeign.encoder.charset-from-content-type

false

指示字符集是否应从 {@code Content-Type} 头派生。

spring.cloud.openfeign.http2client.enabled

false

启用 Feign 使用 Java11 HTTP 2 客户端。

spring.cloud.openfeign.httpclient.connection-timeout

2000

spring.cloud.openfeign.httpclient.connection-timer-repeat

3000

spring.cloud.openfeign.httpclient.disable-ssl-validation

false

spring.cloud.openfeign.httpclient.follow-redirects

true

spring.cloud.openfeign.httpclient.hc5.connection-request-timeout

3

连接请求超时的默认值。

spring.cloud.openfeign.httpclient.hc5.connection-request-timeout-unit

minutes

连接请求超时单位的默认值。

spring.cloud.openfeign.httpclient.hc5.enabled

true

启用 Feign 使用 Apache HTTP Client 5。

spring.cloud.openfeign.httpclient.hc5.pool-concurrency-policy

strict

连接池并发策略。

spring.cloud.openfeign.httpclient.hc5.pool-reuse-policy

fifo

连接池重用策略。

spring.cloud.openfeign.httpclient.hc5.socket-timeout

5

Socket 超时的默认值。

spring.cloud.openfeign.httpclient.hc5.socket-timeout-unit

seconds

Socket 超时单位的默认值。

spring.cloud.openfeign.httpclient.http2.version

HTTP_2

配置此客户端用于与远程服务器通信的协议。使用 {@link HttpClient.Version} 的 {@link String} 值。

spring.cloud.openfeign.httpclient.max-connections

200

spring.cloud.openfeign.httpclient.max-connections-per-route

50

spring.cloud.openfeign.httpclient.ok-http.protocols

配置此客户端用于与远程服务器通信的协议。使用 {@link Protocol} 的 {@link String} 值。

spring.cloud.openfeign.httpclient.ok-http.read-timeout

60s

{@link OkHttpClient} 读取超时时间;默认为 60 秒。

spring.cloud.openfeign.httpclient.time-to-live

900

spring.cloud.openfeign.httpclient.time-to-live-unit

seconds

spring.cloud.openfeign.lazy-attributes-resolution

false

将 @FeignClient 属性解析模式切换为 lazy。

spring.cloud.openfeign.micrometer.enabled

true

为 Feign 启用 Micrometer 功能。

spring.cloud.openfeign.oauth2.clientRegistrationId

提供与 OAuth2 一起使用的 clientId。

spring.cloud.openfeign.oauth2.enabled

false

启用 feign 拦截器以管理 oauth2 访问令牌。

spring.cloud.openfeign.okhttp.enabled

false

启用 Feign 使用 OK HTTP 客户端。

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。