添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
  • 默认情况下, DiscoveryClient 将本地 Spring Boot 服务器自动注册到远程发现服务器的实现。可以通过设置来禁用此 autoRegister=false 行为 @EnableDiscoveryClient
  • @EnableDiscoveryClient 不再需要。您可以 DiscoveryClient 在类路径上放置一个实现,以使 Spring Boot 应用程序向服务发现服务器注册。

  • 默认情况下, ServiceRegistry 实现会自动注册正在运行的服务。要禁用该行为,您可以设置: @EnableDiscoveryClient(autoRegister=false) 永久禁用自动注册。 spring.cloud.service-registry.auto-registration.enabled=false 通过配置禁用该行为。
  • 服务自动注册时将触发两个事件。第一个事件称为 InstancePreRegisteredEvent ,在服务注册之前被触发。第二个事件称为 InstanceRegisteredEvent ,在服务注册后触发。您可以注册一个 ApplicationListener (s) 来收听这些事件并做出反应。
  • 忽略网络接口

    配置忽略了 docker0 接口和所有以 开头的接口 veth

    spring:
      cloud:
        inetutils:
          ignoredInterfaces:
            - docker0
            - veth.*
    

    通过使用正则表达式列表强制仅使用指定的网络地址

    spring:
      cloud:
        inetutils:
          preferredNetworks:
            - 192.168
            - 10.0
    

    强制仅使用站点本地地址

    spring:
      cloud:
        inetutils:
          useOnlySiteLocalInterfaces: true
    

    HTTP客户端工厂

  • Spring Cloud Commons 提供了用于创建 Apache HTTP 客户端 ( ApacheHttpClientFactory) 和 OK HTTP 客户端 ( OkHttpClientFactory) 的 bean。仅当OkHttpClientFactoryOK HTTP jar 在类路径上时才会创建 bean。此外,Spring Cloud Commons 提供了用于创建两个客户端使用的连接管理器的 bean:ApacheHttpClientConnectionManagerFactory用于 Apache HTTP 客户端和OkHttpClientConnectionPoolFactoryOK HTTP 客户端。如果您想自定义如何在下游项目中创建 HTTP 客户端,您可以提供自己的这些 bean 实现。另外,如果你提供一个HttpClientBuilderor类型的 bean OkHttpClient.Builder,默认工厂使用这些构建器作为构建器返回到下游项目的基础。您还可以通过设置spring.cloud.httpclientfactories.apache.enabledspring.cloud.httpclientfactories.ok.enabled来禁用这些 bean 的创建false。 添加gradle配置,自动启用OK HTTP 客户端
  • implementation 'com.squareup.okhttp3:okhttp'
    

    Spring Cloud LoadBalancer缓存

    如果您com.github.ben-manes.caffeine:caffeine在类路径中有,将使用基于 Caffeine 的实现。有关如何配置它的信息,请参阅LoadBalancerCacheConfiguration部分。

    如果您使用的是咖啡因,您还可以通过在属性中传递您自己的咖啡因规范来覆盖 LoadBalancer 的默认咖啡因缓存设置。spring.cloud.loadbalancer.cache.caffeine.spec

    警告:传递您自己的 Caffeine 规范将覆盖任何其他 LoadBalancerCache 设置,包括常规 LoadBalancer 缓存配置字段,例如ttlcapacity

    默认设置包括ttl设置为35s,默认设置initialCapacity256.

    要使用 Caffeine 而不是默认缓存,请将com.github.ben-manes.caffeine:caffeine依赖项添加到类路径。CaffeineCacheManager需要添加org.springframework:spring-context-support依赖。

    常见应用程序属性

    NameDefaultDescription
    spring.cloud.compatibility-verifier.compatible-boot-versions2.6.xDefault accepted versions for the Spring Boot dependency. You can set {@code x} for the patch version if you don’t want to specify a concrete value. Example: {@code 3.4.x}
    spring.cloud.compatibility-verifier.enabledfalseEnables creation of Spring Cloud compatibility verification.
    spring.cloud.config.allow-overridetrueFlag to indicate that {@link #isOverrideSystemProperties() systemPropertiesOverride} can be used. Set to false to prevent users from changing the default accidentally. Default true.
    spring.cloud.config.override-nonefalseFlag to indicate that when {@link #setAllowOverride(boolean) allowOverride} is true, external properties should take lowest priority and should not override any existing property sources (including local config files). Default false.
    spring.cloud.config.override-system-propertiestrueFlag to indicate that the external properties should override system properties. Default true.
    spring.cloud.decrypt-environment-post-processor.enabledtrueEnable the DecryptEnvironmentPostProcessor.
    spring.cloud.discovery.client.composite-indicator.enabledtrueEnables discovery client composite health indicator.
    spring.cloud.discovery.client.health-indicator.enabledtrue
    spring.cloud.discovery.client.health-indicator.include-descriptionfalse
    spring.cloud.discovery.client.health-indicator.use-services-querytrueWhether or not the indicator should use {@link DiscoveryClient#getServices} to check its health. When set to {@code false} the indicator instead uses the lighter {@link DiscoveryClient#probe()}. This can be helpful in large deployments where the number of services returned makes the operation unnecessarily heavy.
    spring.cloud.discovery.client.simple.instances
    spring.cloud.discovery.client.simple.order
    spring.cloud.discovery.enabledtrueEnables discovery client health indicators.
    spring.cloud.features.enabledtrueEnables the features endpoint.
    spring.cloud.httpclientfactories.apache.enabledtrueEnables creation of Apache Http Client factory beans.
    spring.cloud.httpclientfactories.ok.enabledtrueEnables creation of OK Http Client factory beans.
    spring.cloud.hypermedia.refresh.fixed-delay5000
    spring.cloud.hypermedia.refresh.initial-delay10000
    spring.cloud.inetutils.default-hostnamelocalhostThe default hostname. Used in case of errors.
    spring.cloud.inetutils.default-ip-address127.0.0.1The default IP address. Used in case of errors.
    spring.cloud.inetutils.ignored-interfacesList of Java regular expressions for network interfaces that will be ignored.
    spring.cloud.inetutils.preferred-networksList of Java regular expressions for network addresses that will be preferred.
    spring.cloud.inetutils.timeout-seconds1Timeout, in seconds, for calculating hostname.
    spring.cloud.inetutils.use-only-site-local-interfacesfalseWhether to use only interfaces with site local addresses. See {@link InetAddress#isSiteLocalAddress()} for more details.
    spring.cloud.loadbalancer.cache.caffeine.specThe spec to use to create caches. See CaffeineSpec for more details on the spec format.
    spring.cloud.loadbalancer.cache.capacity256Initial cache capacity expressed as int.
    spring.cloud.loadbalancer.cache.enabledtrueEnables Spring Cloud LoadBalancer caching mechanism.
    spring.cloud.loadbalancer.cache.ttl35sTime To Live - time counted from writing of the record, after which cache entries are expired, expressed as a {@link Duration}. The property {@link String} has to be in keeping with the appropriate syntax as specified in Spring Boot StringToDurationConverter. @see StringToDurationConverter.java
    spring.cloud.loadbalancer.clients
    spring.cloud.loadbalancer.configurationsdefaultEnables a predefined LoadBalancer configuration.
    spring.cloud.loadbalancer.enabledtrueEnables Spring Cloud LoadBalancer.
    spring.cloud.loadbalancer.health-checkProperties for HealthCheckServiceInstanceListSupplier.
    spring.cloud.loadbalancer.hintAllows setting the value of hint that is passed on to the LoadBalancer request and can subsequently be used in {@link ReactiveLoadBalancer} implementations.
    spring.cloud.loadbalancer.hint-header-nameX-SC-LB-HintAllows setting the name of the header used for passing the hint for hint-based service instance filtering.
    spring.cloud.loadbalancer.retryProperties for Spring-Retry and Reactor Retry support in Spring Cloud LoadBalancer.
    spring.cloud.loadbalancer.retry.avoid-previous-instancetrueEnables wrapping ServiceInstanceListSupplier beans with RetryAwareServiceInstanceListSupplier if Spring-Retry is in the classpath.
    spring.cloud.loadbalancer.retry.enabledEnables LoadBalancer retries.
    spring.cloud.loadbalancer.service-discovery.timeoutString representation of Duration of the timeout for calls to service discovery.
    spring.cloud.loadbalancer.sticky-sessionProperties for LoadBalancer sticky-session.
    spring.cloud.loadbalancer.x-forwardedEnabling X-Forwarded Host and Proto Headers.
    spring.cloud.loadbalancer.zoneSpring Cloud LoadBalancer zone.
    spring.cloud.refresh.additional-property-sources-to-retainAdditional property sources to retain during a refresh. Typically only system property sources are retained. This property allows property sources, such as property sources created by EnvironmentPostProcessors to be retained as well.
    spring.cloud.refresh.enabledtrueEnables autoconfiguration for the refresh scope and associated features.
    spring.cloud.refresh.extra-refreshabletrueAdditional class names for beans to post process into refresh scope.
    spring.cloud.refresh.never-refreshabletrueComma separated list of class names for beans to never be refreshed or rebound.
    spring.cloud.service-registry.auto-registration.enabledtrueWhether service auto-registration is enabled. Defaults to true.
    spring.cloud.service-registry.auto-registration.fail-fastfalseWhether startup fails if there is no AutoServiceRegistration. Defaults to false.
    spring.cloud.service-registry.auto-registration.register-managementtrueWhether to register the management as a service. Defaults to true.
    spring.cloud.util.enabledtrueEnables creation of Spring Cloud utility beans.