[转]Eureka常用配置

Eureka配置信息详解

 

Eureka包含四部分配置

  1. instance : 当前Eureka Instance实例配置信息
  2. client : Eureka Client客户端特性配置
  3. server : Eureka Server注册中心特性配置
  4. dashboard : Eureka Server注册中心仪表盘配置

Eureka Instance 实例信息配置

Eureka Instance的配置信息全部保存在org.springframework.cloud.netflix.eureka.EurekaInstanceConfigBean配置类中,实际上它是com.netflix.appinfo.EurekaInstanceConfig的实现类,替代了netflixcom.netflix.appinfo.CloudInstanceConfig的默认实现。

Eureka Instance的配置信息全部以eureka.instance.xxx的格式配置。

配置列表:

配置属性

解释

默认值

appname

应用名称

unknown

appGroupName

应用组名

null

instanceEnabledOnit

实例注册到Eureka上是,是否立刻开启通讯。有时候应用在准备好服务之前需要一些预处理

false

nonSecurePort

非安全的端口

80

securePort

安全的端口

443

nonSecurePortEnabled

是否开启非安全端口通讯

true

securePortEnabled

是否开启安全端口通讯

false

leaseRenewalIntervalInSeconds

实例续约间隔时间(s)

30

leaseExpirationDurationInSeconds

实例超时时间,表示最大leaseExpirationDurationInSeconds秒后没有续约,Server就认为他不可用了,随之就会将其剔除(s)

90

virtualHostName

虚拟主机名,首先获取spring.application.name的值,如果取值为空,则取默认unknown。

unknown

instanceId

注册到eureka上的唯一实例ID,不能与相同appname的其他实例重复

 

secureVirtualHostName

安全虚拟主机名,首先获取spring.application.name的值,如果取值为空,则取默认unknown

unknown

metadataMap

实例元数据,可以供其他实例使用。比如spring-boot-admin在监控时,获取实例的上下文和端口

HashMap

dataCenterInfo

实例部署的数据中心。如AWS、MyOwn

new MyDataCenterInfo(DataCenterInfo.Name.MyOwn)

ipAddress

实例的IP地址

null

statusPageUrlPath

实例状态页相对url

"/actuator/info"

statusPageUrl

实例状态页绝对url

url

homePageUrlPath

实例主页相对URL

/

healthCheckUrlUrlPath

实例健康检查相对URL

"/actuator/health"

healthCheckUrl

实例健康检查绝对URL

null

secureHealthCheckUrl

实例安全的健康检查绝对URL

null

namespace

配置属性的命名空间(Spring Cloud中被忽略)

"eureka"

hostname

主机名,不配置的时候讲根据操作系统的主机名来获取

null

preferIpAddress

是否优先使用IP地址作为主机名的标识

false


Eureka Client客户端特性配置

Eureka Client客户端特性配置是对作为Eureka客户端的特性配置,包括Eureka注册中心,本身也是一个Eureka ClientEureka Client特性配置全部在org.springframework.cloud.netflix.eureka.EurekaClientConfigBean中,实际上它是com.netflix.discovery.EurekaClientConfig的实现类,替代了netxflix的默认实现

Eureka Client客户端特性配置全部以eureka.client.xxx的格式配置。

配置列表:

配置属性

解释

默认值

enabled

是否启用Eureka client

true

registryFetchIntervalSeconds

定时从Eureka Server拉取服务注册信息的间隔时间(s)

30

instanceInfoReplicationIntervalSeconds

定时将实例信息(如果变化了)复制到Eureka Server的间隔时间。(InstanceInfoReplicator线程)

30

initialInstanceInfoReplicationIntervalSeconds

首次将实例信息复制到Eureka Server的延迟时间。(InstanceInfoReplicator线程)

40

eurekaServiceUrlPollIntervalSeconds

拉取Eureka Server地址的间隔时间(Eureka Server有可能增减)

300

proxyPort

Eureka Server的代理端口

null

proxyHost

Eureka Server的代理主机名

null

proxyUserName

Eureka Server的代理用户名

null

proxyPassword

Eureka Server的代理密码

null

eurekaServerReadTimeoutSeconds

从Eureka Server读取信息的超时时间(s)

8

eurekaServerConnectTimeoutSeconds

连接Eureka Server的超时时间

5

backupRegistryImpl

Eureka Client第一次启动时获取服务注册信息的调用的回溯实现。Eureka Client启动时首次会检查有没有BackupRegistry的实现类,如果有实现类,则优先从这个实现类里获取服务注册信息

null

eurekaServerTotalConnections

Eureka client连接Eureka Server的链接总数

200

eurekaServerTotalConnectionsPerHost

Eureka client连接单台Eureka Server的链接总数

50

eurekaServerURLContext

当Eureka server的列表在DNS中时,Eureka Server的上下文路径。如http://xxxx/eureka

null

eurekaServerPort

当Eureka server的列表在DNS中时,Eureka Server的端口

null

eurekaServerDNSName

当Eureka server的列表在DNS中时,且要通过DNSName获取Eureka Server列表时,DNS名字

null

region

实例所属区域

us-east-1

eurekaConnectionIdleTimeoutSeconds

Eureka Client和Eureka Server之间的Http连接的空闲超时时间

30

heartbeatExecutorThreadPoolSize

心跳(续约)执行器线程池大小

2

heartbeatExecutorExponentialBackOffBound

心跳执行器在续约过程中超时后的再次执行续约的最大延迟倍数。默认最大延迟时间=10 * eureka.instance.leaseRenewalIntervalInSeconds

10

cacheRefreshExecutorThreadPoolSize

cacheRefreshExecutord的线程池大小(获取注册信息)

2

cacheRefreshExecutorExponentialBackOffBound

cacheRefreshExecutord的再次执行的最大延迟倍数。默认最大延迟时间=10 *eureka.client.registryFetchIntervalSeconds

10

serviceUrl

Eureka Server的分区地址。默认添加了一个defualtZone。也就是最常用的配置eureka.client.service-url.defaultZone=xxx

new HashMap();serviceUrl.put(DEFAULT_ZONE, DEFAULT_URL)

registerWithEureka

是否注册到Eureka Server

true

preferSameZoneEureka

是否使用相同Zone下的Eureka server

true

logDeltaDiff

是否记录Eureka Server和Eureka Client之间注册信息的差异

false

disableDelta

是否开启增量同步注册信息

false

fetchRemoteRegionsRegistry

获取注册服务的远程地区,以逗号隔开

null

availabilityZones

可用分区列表。用逗号隔开

HashMap

filterOnlyUpInstances

是否只拉取UP状态的实例

true

fetchRegistry

是否拉取注册信息

true

shouldUnregisterOnShutdown

是否在停止服务的时候向Eureka Server发起Cancel指令

true

shouldEnforceRegistrationAtInit

是否在初始化过程中注册服务

false


Eureka Server注册中心端配置

Eureka Server注册中心端的配置是对注册中心的特性配置。Eureka Server的配置全部在org.springframework.cloud.netflix.eureka.server.EurekaServerConfigBean里,实际上它是com.netflix.eureka.EurekaServerConfig的实现类,替代了netflix的默认实现

Eureka Server的配置全部以eureka.server.xxx的格式进行配置

配置列表:

配置属性

解释

默认值

enableSelfPreservation

是否开启自我保护

true

renewalPercentThreshold

自我保护续约百分比阀值因子。如果实际续约数小于续约数阀值,则开启自我保护

0.85

renewalThresholdUpdateIntervalMs

续约数阀值更新频率

15 * 60 * 1000

peerEurekaNodesUpdateIntervalMs

Eureka Server节点更新频率

10 * 60 * 1000

enableReplicatedRequestCompression

是否启用复制请求压缩

false

waitTimeInMsWhenSyncEmpty

当从其他节点同步实例信息为空时等待的时间

5 * 60 * 1000

peerNodeConnectTimeoutMs

节点间连接的超时时间

200

peerNodeReadTimeoutMs

节点间读取信息的超时时间

200

peerNodeTotalConnectionsPerHost

单个节点间连接总数

500

peerNodeConnectionIdleTimeoutSeconds

节点间连接空闲超时时间

30

retentionTimeInMSInDeltaQueue

增量队列的缓存时间

3 * MINUTES

deltaRetentionTimerIntervalInMs

清理增量队列中过期的频率

30 * 1000

evictionIntervalTimerInMs

剔除任务频率

60*1000

responseCacheAutoExpirationInSeconds

注册列表缓存超时时间(当注册列表没有变化时)

180

responseCacheUpdateIntervalMs

注册列表缓存更新频率

30 * 1000

useReadOnlyResponseCache

是否开启注册列表的二级缓存

true

disableDelta

是否为client提供增量信息

false

maxThreadsForStatusReplication

状态同步的最大线程数

1

maxElementsInStatusReplicationPool

状态同步队列的最大容量

10000

syncWhenTimestampDiffers

当时间差异时是否同步

true

registrySyncRetries

注册信息同步重试次数

0

registrySyncRetryWaitMs

注册信息同步重试期间的时间间隔

30 * 1000

maxElementsInPeerReplicationPool

节点间同步事件的最大容量

10000

minThreadsForPeerReplication

节点间同步的最小线程数

5

maxThreadsForPeerReplication

节点间同步的最大线程数

20

maxTimeForReplication

节点间同步的最大时间,单位为毫秒

30000

disableDeltaForRemoteRegions

是否启用远程区域增量

false

remoteRegionConnectTimeoutMs

远程区域连接超时时间

1000

remoteRegionReadTimeoutMs

远程区域读取超时时间

1000

remoteRegionTotalConnections

远程区域最大连接数

1000

remoteRegionTotalConnectionsPerHost

远程区域单机连接数

500

remoteRegionConnectionIdleTimeoutSeconds

远程区域连接空闲超时时间

30

remoteRegionRegistryFetchInterval

远程区域注册信息拉取频率

30

remoteRegionFetchThreadPoolSize

远程区域注册信息线程数

20


Eureka Server注册中心仪表盘配置

注册中心仪表盘的配置主要是控制注册中心的可视化展示。以eureka.dashboard.xxx的格式配置

配置列表:

配置属性

解释

默认值

path

仪表盘访问路径

/

enabled

是否启用仪表盘

``

参考

 

转载于:https://my.oschina.net/morpheusWB/blog/3100378

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值