Eureka Server配置项
eureka:
server:
#************node-节点**************
#服务端开启自我保护模式,前面章节有介绍
enable-self-preservation: true
#清除无效服务实例的时间间隔,默认1分钟
eviction-interval-timer-in-ms: 60000
#客户端续约间隔,用于计算每分钟续约数Renews threshold
expected-client-renewal-interval-seconds: 30
#请求频率限制器
rate-limiter-burst-size: 1
#是否开启请求频率限制器
rate-limiter-enabled: false
#请求频率的平均值
rate-limiter-full-fetch-average-rate: 100
#设置信任的client list
rate-limiter-privileged-clients:
#注册服务、拉去服务列表数据的请求频率的平均值
rate-limiter-registry-fetch-average-rate: 500
#是否对标准的client进行频率请求限制。如果是false,则只对非标准client进行限制
rate-limiter-throttle-standard-clients: false
#在服务节点启动时,eureka尝试获取注册信息的次数
registry-sync-retries: 0
#在服务节点启动时,eureka多次尝试获取注册信息的间隔时间
registry-sync-retry-wait-ms: 30000
#Eureka服务器是否应该登录clientAuthHeaders,默认为true
log-identity-headers: true
#允许备份到备份池的最大复制事件数量。而这个备份池负责除状态更新的其他事件。可以根据内存大小,超时和复制流量,来设置此值得大小
max-elements-in-peer-replication-pool: 10000
#允许备份到状态备份池的最大复制事件数量
max-elements-in-status-replication-pool: 10000
#在设置的时间范围类,期望与client续约的百分比。
renewal-percent-threshold: 0.85
#多长时间更新续约的阈值,默认15分钟
renewal-threshold-update-interval-ms: 900000
#对于缓存的注册数据,多长时间过期,3分钟
response-cache-auto-expiration-in-seconds: 180
#多长时间更新一次缓存中的服务注册数据,30秒
response-cache-update-interval-ms: 30000
#缓存增量数据的时间,以便在检索的时候不丢失信息,默认3分钟
retention-time-in-m-s-in-delta-queue: 180000
#当时间戳不一致的时候,是否进行同步
sync-when-timestamp-differs: false
#*是否采用只读缓存策略,只读策略对于缓存的数据不会过期。
use-read-only-response-cache: true
#当eureka server启动的时候,不能从对等节点获取instance注册信息的情况,应等待多长时间。5分钟
wait-time-in-ms-when-sync-empty: 300000
my-url:
#************peer-集群**************
#指示群集节点之间的复制是否应批处理以提高网络效率。
batch-replication: false
#间隔多长时间,清除过期的 delta 数据
delta-retention-timer-interval-in-ms: 30000
#是否开启禁用增量功能,默认为false
disable-delta: false
#增量信息是否可以提供给客户端或一些远程地区,默认为false
disable-delta-for-remote-regions: false
#如果在远程区域本地没有实例运行,对于应用程序回退的旧行为是否被禁用, 默认为false
disable-transparent-fallback-to-other-region: false
#复制的数据在发送请求时是否被压缩
enable-replicated-request-compression: false
#eureka服务器中获取的内容是否在远程地区被压缩
g-zip-content-from-remote-region: false
#用于定义二级响应缓存的容量大小,默认1000
initial-capacity-of-response-cache: 1000
#复制线程可以保持存活的空闲时间,默认为15分钟
max-idle-thread-age-in-minutes-for-peer-replication: 15
#状态复制线程可以保持存活的空闲时间,默认为10分钟
max-idle-thread-in-minutes-age-for-status-replication: 10
#获取将被用于复制线程的最大数目,默认为20
max-threads-for-peer-replication: 20
#被用于状态复制的线程的最大数目,默认为1
max-threads-for-status-replication: 1
#尝试在丢弃复制事件之前进行复制的时间,默认为30000毫秒
max-time-for-replication: 30000
#正常的对等服务instance最小数量。-1表示服务中心为单节点。
min-available-instances-for-peer-replication: -1
#获取将被用于复制线程的最小数目,默认为5
min-threads-for-peer-replication: 5
#被用于状态复制的线程的最小数目,默认为1
min-threads-for-status-replication: 1
#获取集群里服务器尝试复制数据的次数,默认为5
number-of-replication-retries: 5
#eureka server更新集群节点间隔时间,默认10分钟,集群节点发送变化时使用。
peer-eureka-nodes-update-interval-ms: 60000
#eureka服务状态的相互更新的时间间隔。
peer-eureka-status-refresh-time-interval-ms: 30000
#eureka对等节点间连接超时时间
peer-node-connect-timeout-ms: 200
#eureka对等节点连接后的空闲时间
peer-node-connection-idle-timeout-seconds: 30
#eureka服务节点间的读数据连接超时时间,会一致进行重试,如果过小容易造成占用cpu过高
peer-node-read-timeout-ms: 200
#eureka server 节点间连接的总共最大数量
peer-node-total-connections: 1000
#eureka server 节点间连接的单机最大数量
peer-node-total-connections-per-host: 500
#**************remote-远程******************
#必须通过远程区域中检索的应用程序的列表
remote-region-app-whitelist:
#连接到对等远程地eureka节点的超时时间,默认为1000毫秒
remote-region-connect-timeout-ms: 1000
#http连接被清理之后远程地区服务器的空闲时间,默认为30秒
remote-region-connection-idle-timeout-seconds: 30
#用于执行远程区域注册表请求的线程池的大小,默认为20
remote-region-fetch-thread-pool-size: 20
#获取从远程地区eureka节点读取信息的超时时间,默认为1000毫秒
remote-region-read-timeout-ms: 1000
#从远程区域取出该注册表的信息的时间间隔,默认为30秒
remote-region-registry-fetch-interval: 30
#获取远程地区对等节点上http连接的总数,默认为1000
remote-region-total-connections: 1000
#获取远程地区特定的对等节点上http连接的总数,默认为500
remote-region-total-connections-per-host: 500
#用来合格请求远程区域注册表的信任存储文件,默认为空
remote-region-trust-store: ""
#获取偏远地区信任存储文件的密码,默认为“changeit”
remote-region-trust-store-password: changeit
#远程地区的URL列表
remote-region-urls: 11
#针对远程地区发现的网址域名的map
remote-region-urls-with-name:
#**************codec-解析器******************
#如果没有设置默认的编解码器将使用xml编解码器,获取的是编码器的类名称
xml-codec-name:
#如果没有设置默认的编解码器将使用全JSON编解码器,获取的是编码器的类名称
json-codec-name:
#属性解析器
property-resolver:
#************AWS-节点**************
#AWS缓存时间
a-s-g-cache-expiry-timeout-ms: 60000
#从AWS上更新ASG信息的时间间隔,单位为毫秒
a-s-g-update-interval-ms: 300000
#查询AWS上ASG(自动缩放组)信息的超时值,单位为毫秒,默认为300
a-s-g-query-timeout-ms: 300
#获取aws访问的id,主要用于弹性ip绑定,此配置是用于aws上的,默认为null
a-w-s-access-id:
#获取aws私有秘钥,主要用于弹性ip绑定,此配置是用于aws上的,默认为null
a-w-s-secret-key:
#aws获取配置绑定EIP或Route53的策略。
binding-strategy: eip
#获取服务器尝试绑定到候选的EIP的次数,默认为3
e-i-p-bind-rebind-retries: 3
#与上面的是同一作用,仅仅是稳定状态检查,默认为5 * 60 * 1000
e-i-p-binding-retry-interval-ms: 300000
#服务器检查ip绑定的时间间隔,单位为毫秒,
e-i-p-binding-retry-interval-ms-when-unbound: 60000
#用来描述从AWS第三账户的自动缩放组中的角色名称,默认为“ListAutoScalingGroups”
list-auto-scaling-groups-role-name: ListAutoScalingGroups
#对AWS集群中服务器节点的准备连接,默认为true
prime-aws-replica-connections: true
#AmazonRoute 53是一项高可用性及高可扩展性域名服务
#服务器尝试绑定到候选Route53域的次数,默认为3
route53-bind-rebind-retries: 3
#服务器应该检查是否和Route53域绑定的时间间隔,默认为5分钟
route53-binding-retry-interval-ms: 300000
#用于建立route53域的ttl,默认为30
route53-domain-t-t-l: 30
Eureka Client配置项
eureka:
client:
#服务器是否能够重定向客户端请求到备份服务器。
#如果设置为false,服务器将直接处理请求,
#如果设置为true,它可能发送HTTP重定向到客户端。默认为false
allow-redirects: false
#获取实例所在的地区下可用性的区域列表,用逗号隔开。
availability-zones: zone1,zone2
#获取实现了eureka客户端在第一次启动时读取注册表的信息作为回退选项的实现名称
backup-registry-impl: ""
#执行程序指数回退刷新的相关属性,是重试延迟的最大倍数值,默认为10
cache-refresh-executor-exponential-back-off-bound: 10
#执行程序缓存刷新线程池的大小,默认为5
cache-refresh-executor-thread-pool-size: 2
#客户端数据接收的名称????
client-data-accept: full
#这是一个短暂的解码器的配置,如果最新的解码器是稳定的,则可以去除,默认为null
decoder-name: null
#指示eureka客户端是否禁用增量提取
disable-delta: false
#eureka服务器序列化/反序列化的信息中获取“$”符号的替换字符串。默认为“_-”
dollar-replacement:
#该客户端是否可用
enabled: true
#编码器名称
encoder-name: ""
#eureka服务器序列化/反序列化的信息中获取“_”符号的的替换字符串。默认为“__“
escape-char-replacement:
#连接到 Eureka Server 空闲连接的超时时间(s),默认30
eureka-connection-idle-timeout-seconds: 30
#连接Eureka Server 超时时间(s),默认5秒
eureka-server-connect-timeout-seconds: 5
#***********DNS***************
#获取要查询的DNS名称来获得eureka服务器,此配置只有在eureka服务器ip地址列表是在DNS中才会用到。默认为null
eureka-server-d-n-s-name:
#获取eureka服务器的端口,此配置只有在eureka服务器ip地址列表是在DNS中才会用到。默认为null
eureka-server-port:
#表示eureka注册中心的路径,
#如果配置为eureka,则为http://ip:port/eureka/,
#在eureka的配置文件中加入此配置表示eureka作为客户端向注册中心注册,从而构成eureka集群。此配置只有在eureka服务器ip地址列表是在DNS中才会用到,默认为null
eureka-server-u-r-l-context: "eureka"
#指示eureka客户端是否应使用DNS机制来获取要与之通信的eureka服务器列表。
#当DNS名称更新为具有其他服务器时,eureka客户端轮询eurekaServiceUrlPollIntervalSeconds中指定的信息后立即使用该信息。
use-dns-for-fetching-service-urls: false
#读取Eureka Server 超时时间(s),默认8秒
eureka-server-read-timeout-seconds: 8
#获取从eureka客户端到所有eureka服务器的连接总数,默认200个
eureka-server-total-connections: 200
#获取从eureka客户端到eureka服务器主机允许的连接总数,默认50个
eureka-server-total-connections-per-host: 50
#询问Eureka Server信息变化的时间间隔(s),默认为300秒
eureka-service-url-poll-interval-seconds: 300
#客户端是否获取eureka服务器注册表上的注册信息,默认为true
fetch-registry: true
#eureka服务注册表信息里的以逗号隔开的地区名单,如果不这样返回这些地区名单,则客户端启动将会出错。默认为null
fetch-remote-regions-registry:
#是否过滤掉,非UP的实例。默认为true
filter-only-up-instances: true
#当服务端支持压缩的情况下,是否支持从服务端获取的信息进行压缩。默认为true
g-zip-content: true
#心跳执行程序回退相关的属性,是重试延迟的最大倍数值,默认为10
heartbeat-executor-exponential-back-off-bound: 10
#心跳保持线程池初始化线程数,默认2个
heartbeat-executor-thread-pool-size: 2
#是否开启健康检查
healthcheck:
enabled: true
#是否记录eureka服务器和客户端之间在注册表的信息方面的差异,默认为false
log-delta-diff: false
#客户端的状态更新到远程服务器上,默认为true
on-demand-update-status-change: true
#客户端优先级
order: 0
#实例是否使用同一zone里的eureka服务器,默认为true,理想状态下,eureka客户端与服务端是在同一zone下
prefer-same-zone-eureka: true
#获取此实例所在的区域
region: "us-east-1"
#自动刷新开启
refresh:
enable: true
#是否注册到eureka
register-with-eureka: true
#从eureka服务器获取注册表信息的频率,默认30秒
registry-fetch-interval-seconds: 30
#此客户端只对单一的VIP注册表的信息感兴趣。默认为null
registry-refresh-single-vip-address:
#与Eureka注册服务中心的通信zone和url地址,分区时使用,一般默认使用defaultZone
service-url:
defaultZone: http://ip:port/eureka/,http://ip:port/eureka/
Zone1: http://ip:port/eureka/,http://ip:port/eureka/
#client是否在初始化阶段强行注册到服务中心,默认为false
should-enforce-registration-at-init: false
#client在shutdown情况下,是否显示从注册中心注销,默认为true
should-unregister-on-shutdown: true
#更新实例信息的变化到Eureka服务端的间隔时间,(s)
instance-info-replication-interval-seconds: 30
#初始化实例信息到Eureka服务端的间隔时间,(s)
initial-instance-info-replication-interval-seconds: 40
#**********codec-解析器*************
property-resolver:
#**********proxy-代理*************
#获取eureka server 的代理主机名
proxy-host:
#获取eureka server 的代理主机密码
proxy-password:
#获取eureka server 的代理主机端口
proxy-port:
#获取eureka server 的代理用户名
proxy-user-name:
Eureka Instance配置项
eureka:
instance:
#***********instance-属性*****************
#注册到注册中心的应用所属分组名称
app-group-name:
#*注册到注册中心的应用名称
appname: unknown
#指定服务实例所属数据中心
data-center-info:
#默认地址解析顺序
default-address-resolution-order:
#该服务实例环境配置,默认test
environment: test
#*该服务实例所在主机名
hostname:
#*该服务实例在注册中心的唯一实例ID
instance-id:
#*该服务实例的IP地址
ip-address:
#该服务实例注册到Eureka Server 的初始状态
initial-status: up
#指示是否应在eureka注册后立即启用实例以获取流量
instance-enabled-onit: false
#表示eureka client发送心跳给server端的频率,默认30秒
#如果在leaseExpirationDurationInSeconds后,server端没有收到client的心跳,则将摘除该instance。
#除此之外,如果该instance实现了HealthCheckCallback,并决定让自己unavailable的话,则该instance也不会接收到流量。
lease-renewal-interval-in-seconds: 30
#表示eureka server至上一次收到client的心跳之后,等待下一次心跳的超时时间,默认90秒
#在这个时间内若没收到下一次心跳,则将移除该instance。
#如果该值太大,则很可能将流量转发过去的时候,该instance已经不存活了。
#如果该值设置太小了,则instance则很可能因为临时的网络抖动而被摘除掉。该值至少应该大于
lease-expiration-duration-in-seconds: 90
#自定义的元数据,key/value都可以随便写。
metadata-map:
myKey: myvalue
#获取用于查找属性的命名空间。 在Spring Cloud中被忽略。
namespace: eureka
#http通信端口
non-secure-port: 80
#是否启用HTTP通信端口
non-secure-port-enabled: true
#*是否优先使用服务实例的IP地址,相较于hostname
prefer-ip-address: false
registry:
#默认与eureka server开启通信的数量
default-open-for-traffic-count: 1
#每分钟向eureka server的续约次数
expected-number-of-clients-sending-renews: 1
#*********check-健康检查*************
#该服务实例的健康检查地址(url),绝对地址
health-check-url:
#该服务实例的健康检查地址,相对地址
health-check-url-path: /actuator/health
#该服务实例的主页地址(url),绝对地址
home-page-url:
#该服务实例的主页地址,相对地址
home-page-url-path: /
#该服务实例的状态检查地址(url),绝对地址
status-page-url:
#该服务实例的状态检查地址,相对地址
status-page-url-path: /actuator/info
#**************https****************
#该服务实例安全健康检查地址(URL),绝对地址
secure-health-check-url:
#HTTPS通信端口
secure-port: 443
#是否启用HTTPS通信端口
secure-port-enabled: false
#服务实例安全主机名称(HTTPS)
secure-virtual-host-name: unknown
#该服务实例非安全注解名称(HTTP)
virtual-host-name: unknown
#***********AWS***************
#注册到注册中心的应用所属分组名称(AWS服务器)
a-s-g-name: ""