Spring Cloud——配置详解
(本文只作为学习记录)
服务注册类配置
-
eureka.client.serviceUrl.defaultZone
注册中心地址
-
eureka.client.enabled=true
启用Eureka客户端
-
eureka.client.registry-fetch-interval-seconds=30
从Eureka服务端获取注册信息的间隔时间,单位为秒
-
eureka.client.instance-info-replication-interval-seconds=30
更新实例信息的变化到Eureka服务端的间隔时间,单位为秒
-
eureka.client.initial-instance-info-replication-interval-seconds=40
初始化实例信息到Eureka服务端的间隔时间,单位为秒
-
eureka.client.eureka-service-url-poll-interval-seconds=300
轮询Eureka服务端地址更改的时间间隔,单位为秒,当于Spring Cloud Config配合,动态刷新Eureka的serviceURL地址时需要关注该参数
-
eureka.client.eureka-server-read-timeout-seconds=8
读取Eureka Server信息的超时时间,单位为秒
-
eureka.client.eureka-server-connect-timeout-seconds=5
连接Eureka Server的超时时间,单位为秒
-
eureka.client.eureka-server-total-connections=200
从Eureka客户端到所有Eureka服务端的连接总数
-
eureka.client.eureka-server-total-connections-per-host=50
从Eureka客户端到每个Eureka服务端主机的连接总数
-
eureka.client.eureka-connection-idle-timeout-seconds=30
Eureka服务端连接的空闲关闭时间,单位为秒
-
eureka.client.heartbeat-executor-thread-pool-size=2
心跳连接池的初始化线程数
-
eureka.client.heartbeat-executor-exponential-back-off-bound=10
心跳超时重试延迟时间的最大乘数值
-
eureka.client.cache-refresh-executor-thread-pool-size=2
缓存刷新线程池的初始化线程数
-
eureka.client.cache-refresh-executor-exponential-back-off-bound=10
缓存刷新重试延迟时间的最大乘数值
-
eureka.client.use-dns-for-fetching-service-urls=false
使用DNS来获取Eureka服务端的serviceUrl
-
eureka.client.register-with-eureka=true
是否要将自身的实例信息注册到Eureka服务端
-
eureka.client.prefer-same-zone-eureka=true
是否偏好使用处于相同Zone的Eureka服务端
-
eureka.client.filter-only-up-instances=true
获取实例时是否过滤,仅保留UP状态的实例
-
eureka.client.fetch-registry=true
是否从Eureka服务端获取注册信息
服务实例类配置
-
随机实例名从而实现在同一主机上,不指定端口即可启动多个实例eureka.instance.instance-id=${spring.application.name}:${random.int}
-
eureka.instance.status-page-url-path=/info
应用状态页的URL
-
eureka.instance.health-check-url-path=/health
应用健康检查的URL
-
eureka.instance.home-page-url-path=/
应用主页URL设置
健康检查(将Eureka客户端的健康检测交给Spring-boot-actuator)
- 在pom.xml中引入
模块spring-boot-starter-actuator
- 在application.properties中增加参数配置
eureka.client.healthcheck.enabled=true
其他配置
-
eureka.instance.preferIpAddress=false
是否优先使用IP地址作为主机名的标识
-
eureka.instance.lease-renewal-interval-in-seconds=30
Eureka客户端向服务端发送心跳的间隔时间,单位为秒
-
eureka.instance.lease-expiration-duration-in-seconds=90
Eureka服务端在收到最后一次心跳之后等待的上限,单位为秒,超时后服务端将会移除该实例
-
eureka.instance.non-secure-port=80
非安全的通信端口号
-
eureka.instance.secure-port=443
安全的通信端口号
-
eureka.instance.non-secure-port-enabled=true
是否启用非安全的端口号
-
eureka.instance.secure-port-enabled=false
是否启用安全的端口号
-
eureka.instance.hostname=
主机名,不配置的时候将根据操作系统的主机名来获取
-
eureka.instance.appname=
服务名,默认为spring.application.name的配置值,没有则为unknown