微服务架构:Eureka参数配置项详解

【Spring Cloud】源码-Eureka客户端的服务注册、服务获取与服务续约 在看源码之前,先说一下标题中提到的三个概念: 1. 服务注册:     服务提供者(eureka客户端)在启动后,如果参数eureka.client.register-with-eureka为true,那么会将自己注册到服务注册中心中,注册的动作会将自己的元数据发送给注册中心,注册中心将接受的元数据保存在一个注册列表中,该列表是一个双层Map结构,具体为:Map<服务名, Map<... 阅读详情

Eureka涉及到的参数配置项数量众多,它的很多功能都是通过参数配置来实现的,了解这些参数的含义有助于我们更好的应用Eureka的各种功能,下面对Eureka的配置项做具体介绍,供大家参考。

      Eureka客户端配置

      1、RegistryFetchIntervalSeconds

      从eureka服务器注册表中获取注册信息的时间间隔(s),默认为30秒

      2、InstanceInfoReplicationIntervalSeconds

      复制实例变化信息到eureka服务器所需要的时间间隔(s),默认为30秒

      3、InitialInstanceInfoReplicationIntervalSeconds

      最初复制实例信息到eureka服务器所需的时间(s),默认为40秒

      4、EurekaServiceUrlPollIntervalSeconds

      询问Eureka服务url信息变化的时间间隔(s),默认为300秒

      5、ProxyHost

      获取eureka服务的代理主机,默认为null

      6、ProxyProxyPort

      获取eureka服务的代理端口, 默认为null 

       7、ProxyUserName

      获取eureka服务的代理用户名,默认为null

       8、ProxyPassword

      获取eureka服务的代理密码,默认为null 

       9、GZipContent

       eureka注册表的内容是否被压缩,默认为true,并且是在最好的网络流量下被压缩

      10、EurekaServerReadTimeoutSeconds

      eureka需要超时读取之前需要等待的时间,默认为8秒

      11、EurekaServerConnectTimeoutSeconds

      eureka需要超时连接之前需要等待的时间,默认为5秒

      12、BackupRegistryImpl

      获取实现了eureka客户端在第一次启动时读取注册表的信息作为回退选项的实现名称

      13、EurekaServerTotalConnections

       eureka客户端允许所有eureka服务器连接的总数目,默认是200

       14、EurekaServerTotalConnectionsPerHost

       eureka客户端允许eureka服务器主机连接的总数目,默认是50

       15、EurekaServerURLContext

       表示eureka注册中心的路径,如果配置为eureka,则为http://x.x.x.x:x/eureka/,在eureka的配置文件中加入此配置表示eureka作为客户端向注册中心注册,从而构成eureka集群。此配置只有在eureka服务器ip地址列表是在DNS中才会用到,默认为null

       16、EurekaServerPort

       获取eureka服务器的端口,此配置只有在eureka服务器ip地址列表是在DNS中才会用到。默认为null

       17、EurekaServerDNSName

       获取要查询的DNS名称来获得eureka服务器,此配置只有在eureka服务器ip地址列表是在DNS中才会用到。默认为null

       18、UseDnsForFetchingServiceUrls

       eureka客户端是否应该使用DNS机制来获取eureka服务器的地址列表,默认为false

       19、RegisterWithEureka

       实例是否在eureka服务器上注册自己的信息以供其他服务发现,默认为true

       20、PreferSameZoneEureka

       实例是否使用同一zone里的eureka服务器,默认为true,理想状态下,eureka客户端与服务端是在同一zone下

       21、AllowRedirects

       服务器是否能够重定向客户端请求到备份服务器。 如果设置为false,服务器将直接处理请求,如果设置为true,它可能发送HTTP重定向到客户端。默认为false

       22、LogDeltaDiff

       是否记录eureka服务器和客户端之间在注册表的信息方面的差异,默认为false

       23、DisableDelta(*)

       默认为false

       24、fetchRegistryForRemoteRegions

       eureka服务注册表信息里的以逗号隔开的地区名单,如果不这样返回这些地区名单,则客户端启动将会出错。默认为null

       25、Region

       获取实例所在的地区。默认为us-east-1

       26、AvailabilityZones

       获取实例所在的地区下可用性的区域列表,用逗号隔开。

       27、EurekaServerServiceUrls

       Eureka服务器的连接,默认为http://XXXX:X/eureka/,但是如果采用DNS方式获取服务地址,则不需要配置此设置。

       28、FilterOnlyUpInstances(*)

       是否获得处于开启状态的实例的应用程序过滤之后的应用程序。默认为true

       29、EurekaConnectionIdleTimeoutSeconds

       Eureka服务的http请求关闭之前其响应的时间,默认为30 秒

       30、FetchRegistry

       此客户端是否获取eureka服务器注册表上的注册信息,默认为true

       31、RegistryRefreshSingleVipAddress

       此客户端只对一个单一的VIP注册表的信息感兴趣。默认为null

       32、HeartbeatExecutorThreadPoolSize(*)

       心跳执行程序线程池的大小,默认为5

       33、HeartbeatExecutorExponentialBackOffBound(*)

       心跳执行程序回退相关的属性,是重试延迟的最大倍数值,默认为10

       34、CacheRefreshExecutorThreadPoolSize(*)

       执行程序缓存刷新线程池的大小,默认为5

       35、CacheRefreshExecutorExponentialBackOffBound

       执行程序指数回退刷新的相关属性,是重试延迟的最大倍数值,默认为10

       36、DollarReplacement

       eureka服务器序列化/反序列化的信息中获取“$”符号的的替换字符串。默认为“_-”

       37、EscapeCharReplacement

       eureka服务器序列化/反序列化的信息中获取“_”符号的的替换字符串。默认为“__”

       38、OnDemandUpdateStatusChange(*)

       如果设置为true,客户端的状态更新将会点播更新到远程服务器上,默认为true

       39、EncoderName

       这是一个短暂的编码器的配置,如果最新的编码器是稳定的,则可以去除,默认为null

       40、DecoderName

       这是一个短暂的解码器的配置,如果最新的解码器是稳定的,则可以去除,默认为null

       41、ClientDataAccept(*)

       客户端数据接收

       42、Experimental(*)

       当尝试新功能迁移过程时,为了避免配置API污染,相应的配置即可投入实验配置部分,默认为null

       实例微服务端配置

       1、InstanceId

       此实例注册到eureka服务端的唯一的实例ID,其组成为${spring.application.name}:${spring.application.instance_id:${random.value}}

       2、Appname

       获得在eureka服务上注册的应用程序的名字,默认为unknow

       3、AppGroupName

       获得在eureka服务上注册的应用程序组的名字,默认为unknow

       4、InstanceEnabledOnit(*)

       实例注册到eureka服务器时,是否开启通讯,默认为false

       5、NonSecurePort

       获取该实例应该接收通信的非安全端口。默认为80

       6、SecurePort

       获取该实例应该接收通信的安全端口,默认为443

       7、NonSecurePortEnabled

       该实例应该接收通信的非安全端口是否启用,默认为true

       8、SecurePortEnabled

       该实例应该接收通信的安全端口是否启用,默认为false

       9、LeaseRenewalIntervalInSeconds

       eureka客户需要多长时间发送心跳给eureka服务器,表明它仍然活着,默认为30 秒

       10、LeaseExpirationDurationInSeconds

       Eureka服务器在接收到实例的最后一次发出的心跳后,需要等待多久才可以将此实例删除,默认为90秒

       11、VirtualHostName

       此实例定义的虚拟主机名,其他实例将通过使用虚拟主机名找到该实例。

       12、SecureVirtualHostName

       此实例定义的安全虚拟主机名

       13、ASGName(*)

       与此实例相关联 AWS自动缩放组名称。此项配置是在AWS环境专门使用的实例启动,它已被用于流量停用后自动把一个实例退出服务。

       14、HostName

       与此实例相关联的主机名,是其他实例可以用来进行请求的准确名称

       15、MetadataMap(*)

       获取与此实例相关联的元数据(key,value)。这个信息被发送到eureka服务器,其他实例可以使用。

       16、DataCenterInfo(*)

       该实例被部署在数据中心

       17、IpAddress

       获取实例的ip地址

       18、StatusPageUrlPath(*)

       获取此实例状态页的URL路径,然后构造出主机名,安全端口等,默认为/info

       19、StatusPageUrl(*)

       获取此实例绝对状态页的URL路径,为其他服务提供信息时来找到这个实例的状态的路径,默认为null

       20、HomePageUrlPath(*)

       获取此实例的相关主页URL路径,然后构造出主机名,安全端口等,默认为/

       21、HomePageUrl(*)

       获取此实例的绝对主页URL路径,为其他服务提供信息时使用的路径,默认为null

       22、HealthCheckUrlPath

       获取此实例的相对健康检查URL路径,默认为/health

       23、HealthCheckUrl

       获取此实例的绝对健康检查URL路径,默认为null

       24、SecureHealthCheckUrl

       获取此实例的绝对安全健康检查网页的URL路径,默认为null

       25、DefaultAddressResolutionOrder

       获取实例的网络地址,默认为[]

       26、Namespace

       获取用于查找属性的命名空间,默认为eureka

       Eureka服务端配置

       1、AWSAccessId

       获取aws访问的id,主要用于弹性ip绑定,此配置是用于aws上的,默认为null

       2、AWSSecretKey

       获取aws私有秘钥,主要用于弹性ip绑定,此配置是用于aws上的,默认为null

       3、EIPBindRebindRetries

       获取服务器尝试绑定到候选的EIP的次数,默认为3

       4、EIPBindingRetryIntervalMsWhenUnbound(*)

       服务器检查ip绑定的时间间隔,单位为毫秒,默认为1 * 60 * 1000

       5、EIPBindingRetryIntervalMs

       与上面的是同一作用,仅仅是稳定状态检查,默认为5 * 60 * 1000

       6、EnableSelfPreservation

       自我保护模式,当出现出现网络分区、eureka在短时间内丢失过多客户端时,会进入自我保护模式,即一个服务长时间没有发送心跳,eureka也不会将其删除,默认为true

       7、RenewalPercentThreshold(*)

       

       阈值因子,默认是0.85,如果阈值比最小值大,则自我保护模式开启

       8、RenewalThresholdUpdateIntervalMs

       阈值更新的时间间隔,单位为毫秒,默认为15 * 60 * 1000

       9、PeerEurekaNodesUpdateIntervalMs(*)

       集群里eureka节点的变化信息更新的时间间隔,单位为毫秒,默认为10 * 60 * 1000

       10、EnableReplicatedRequestCompression

       复制的数据在发送请求时是否被压缩,默认为false

       11、NumberOfReplicationRetries

       获取集群里服务器尝试复制数据的次数,默认为5

       12、PeerEurekaStatusRefreshTimeIntervalMs

       服务器节点的状态信息被更新的时间间隔,单位为毫秒,默认为30 * 1000

       13、WaitTimeInMsWhenSyncEmpty(*)

       在Eureka服务器获取不到集群里对等服务器上的实例时,需要等待的时间,单位为毫秒,默认为1000 * 60 * 5

       14、PeerNodeConnectTimeoutMs

       连接对等节点服务器复制的超时的时间,单位为毫秒,默认为200

       15、PeerNodeReadTimeoutMs

       读取对等节点服务器复制的超时的时间,单位为毫秒,默认为200

       16、PeerNodeTotalConnections

       获取对等节点上http连接的总数,默认为1000

       17、PeerNodeTotalConnectionsPerHost(*)

       获取特定的对等节点上http连接的总数,默认为500

       18、PeerNodeConnectionIdleTimeoutSeconds(*)

       http连接被清理之后服务器的空闲时间,默认为30秒

       19、RetentionTimeInMSInDeltaQueue(*)

       客户端保持增量信息缓存的时间,从而保证不会丢失这些信息,单位为毫秒,默认为3 * 60 * 1000

       20、DeltaRetentionTimerIntervalInMs

       清理任务程序被唤醒的时间间隔,清理过期的增量信息,单位为毫秒,默认为30 * 1000

       21、EvictionIntervalTimerInMs

       过期实例应该启动并运行的时间间隔,单位为毫秒,默认为60 * 1000

       22、ASGQueryTimeoutMs(*)

       查询AWS上ASG(自动缩放组)信息的超时值,单位为毫秒,默认为300

       23、ASGUpdateIntervalMs

       从AWS上更新ASG信息的时间间隔,单位为毫秒,默认为5 * 60 * 1000

       24、ASGCacheExpiryTimeoutMs(*)

       缓存ASG信息的到期时间,单位为毫秒,默认为10 * 60 * 1000

       25、ResponseCacheAutoExpirationInSeconds(*)

       当注册表信息被改变时,则其被保存在缓存中不失效的时间,默认为180秒

       26、ResponseCacheUpdateIntervalMs(*)

       客户端的有效负载缓存应该更新的时间间隔,默认为30 * 1000毫秒

       27、UseReadOnlyResponseCache(*)

       目前采用的是二级缓存策略,一个是读写高速缓存过期策略,另一个没有过期只有只读缓存,默认为true,表示只读缓存

       28、DisableDelta(*)

       增量信息是否可以提供给客户端看,默认为false

       29、MaxIdleThreadInMinutesAgeForStatusReplication(*)

       状态复制线程可以保持存活的空闲时间,默认为10分钟

       30、MinThreadsForStatusReplication

       被用于状态复制的线程的最小数目,默认为1

       31、MaxThreadsForStatusReplication

       被用于状态复制的线程的最大数目,默认为1

       32、MaxElementsInStatusReplicationPool

       可允许的状态复制池备份复制事件的最大数量,默认为10000

       33、SyncWhenTimestampDiffers

       当时间变化实例是否跟着同步,默认为true

       34、RegistrySyncRetries

       当eureka服务器启动时尝试去获取集群里其他服务器上的注册信息的次数,默认为5

       35、RegistrySyncRetryWaitMs

       当eureka服务器启动时获取其他服务器的注册信息失败时,会再次尝试获取,期间需要等待的时间,默认为30 * 1000毫秒

       36、MaxElementsInPeerReplicationPool(*)

       复制池备份复制事件的最大数量,默认为10000

       37、MaxIdleThreadAgeInMinutesForPeerReplication(*)

       复制线程可以保持存活的空闲时间,默认为15分钟

       38、MinThreadsForPeerReplication(*)

       获取将被用于复制线程的最小数目,默认为5

       39、MaxThreadsForPeerReplication

       获取将被用于复制线程的最大数目,默认为20

       40、MaxTimeForReplication(*)

       尝试在丢弃复制事件之前进行复制的时间,默认为30000毫秒

       41、PrimeAwsReplicaConnections(*)

       对集群中服务器节点的连接是否应该准备,默认为true

       42、DisableDeltaForRemoteRegions(*)

       增量信息是否可以提供给客户端或一些远程地区,默认为false

       43、RemoteRegionConnectTimeoutMs(*)

       连接到对等远程地eureka节点的超时时间,默认为1000毫秒

       44、RemoteRegionReadTimeoutMs(*)

       获取从远程地区eureka节点读取信息的超时时间,默认为1000毫秒

       45、RemoteRegionTotalConnections

       获取远程地区对等节点上http连接的总数,默认为1000

       46、RemoteRegionTotalConnectionsPerHost

       获取远程地区特定的对等节点上http连接的总数,默认为500

       47、RemoteRegionConnectionIdleTimeoutSeconds

       http连接被清理之后远程地区服务器的空闲时间,默认为30秒

       48、GZipContentFromRemoteRegion(*)

       eureka服务器中获取的内容是否在远程地区被压缩,默认为true

       49、RemoteRegionUrlsWithName

       针对远程地区发现的网址域名的map

       50、RemoteRegionUrls

       远程地区的URL列表

       51、RemoteRegionAppWhitelist(*)

       必须通过远程区域中检索的应用程序的列表

       52、RemoteRegionRegistryFetchInterval

       从远程区域取出该注册表的信息的时间间隔,默认为30秒

       53、RemoteRegionFetchThreadPoolSize

       用于执行远程区域注册表请求的线程池的大小,默认为20

       54、RemoteRegionTrustStore

       用来合格请求远程区域注册表的信任存储文件,默认为空

       55、RemoteRegionTrustStorePassword

       获取偏远地区信任存储文件的密码,默认为“changeit”

       56、disableTransparentFallbackToOtherRegion(*)

       如果在远程区域本地没有实例运行,对于应用程序回退的旧行为是否被禁用, 默认为false

       57、BatchReplication(*)

       表示集群节点之间的复制是否为了网络效率而进行批处理,默认为false

       58、LogIdentityHeaders(*)

       Eureka服务器是否应该登录clientAuthHeaders,默认为true

       59、RateLimiterEnabled

       限流是否应启用或禁用,默认为false

       60、RateLimiterThrottleStandardClients

       是否对标准客户端进行限流,默认false

       61、RateLimiterPrivilegedClients(*)

       认证的客户端列表,这里是除了标准的eureka Java客户端。

       62、RateLimiterBurstSize(*)

       速率限制的burst size ,默认为10,这里用的是令牌桶算法

       63、RateLimiterRegistryFetchAverageRate(*)

       速率限制器用的是令牌桶算法,此配置指定平均执行注册请求速率,默认为500

       64、RateLimiterFullFetchAverageRate(*)

       速率限制器用的是令牌桶算法,此配置指定平均执行请求速率,默认为100

       65、ListAutoScalingGroupsRoleName(*)

       用来描述从AWS第三账户的自动缩放组中的角色名称,默认为“ListAutoScalingGroups”

       66、JsonCodecName(*)

       如果没有设置默认的编解码器将使用全JSON编解码器,获取的是编码器的类名称

       67、XmlCodecName(*)

       如果没有设置默认的编解码器将使用xml编解码器,获取的是编码器的类名称

       68、BindingStrategy(*)

       获取配置绑定EIP或Route53的策略。

       69、Route53DomainTTL(*)

       用于建立route53域的ttl,默认为301

       70、Route53BindRebindRetries(*)

       服务器尝试绑定到候选Route53域的次数,默认为3

       71、Route53BindingRetryIntervalMs(*)

       服务器应该检查是否和Route53域绑定的时间间隔,默认为5 * 60 * 1000毫秒

       72、Experimental(*)

       当尝试新功能迁移过程时,为了避免配置API污染,相应的配置即可投入实验配置部分,默认为null

       以上是Eureka配置项的详细说明,分为Eureka客户端配置、Eureka服务端配置和微服务端配置,一共100多项,其中有很多配置参数并不需要我们去修改,使用默认的就好,有些跟我们业务相关的配置参数可根据需要自行设置。

Spring Cloud (10) | Eureka 各项参数详解 eureka.client.registry-fetch-interval-seconds 表示eureka client间隔多久去拉取服务注册信息,默认为30秒,对于api-gateway,如果要迅速获取服务注册状态,可以缩小该值,比如5秒eureka.instance.lease-expiration-duration-in-seconds leaseExpirationDurationIn 阅读详情

相关推荐

eureka配置详解

springcloud中eureka的配置的详细中文介绍,可以在appliaction中进行配置

spring cloud eureka 参数配置

eureka.client.registry-fetch-interval-seconds 表示eureka client间隔多久去拉取服务注册信息,默认为30秒,对于api-gateway,如果要迅速获取服务注册状态,可以缩小该值,比如5秒 eureka.instance.lease-expiration-duration-in-seconds leaseExpirationDurationInSeconds,表示eureka server至上一次收到client的心跳之后,等待下一次心跳的超时时间

u013488838的专栏 1551

Python实战:用pdfplumber从PDF中精准提取表格数据(附完整代码)

本文详细介绍了如何使用Python库pdfplumber从PDF中精准提取表格数据,包括环境配置、标准与复杂表格处理策略、数据清洗与验证等实战技巧。通过完整代码示例,帮助数据分析师和财务专业人士实现PDF数据提取的自动化,提升工作效率。

weixin_29061821的博客 398

Eureka节点信息同步延迟及单个注册中心节点load偏高问题的排查

问题现象 1、网关会报访问后端正在发布的应用超时的错误: 2、Eureka注册中心负载Load不均衡 二、问题分析 1、Eureka客户端同步节点信息的分析 Eureka-Client中的com.netflix.discovery.DiscoveryClient类,为负责与Eureka注册中心进行沟通协调的实现类,包括应用节点往注册中心注册、应用节点状态向注册中心更新状态、从注册中心同步注册应用信息等功能。 com.netflix.discovery.DiscoveryCl..

冯立彬的博客 2664

告别TwinCAT:手把手教你用IgH EtherCAT Master在LinuxCNC上搭建实时运动控制平台

本文详细介绍了如何利用IgH EtherCAT Master和LinuxCNC搭建开源实时运动控制平台,替代商业软件TwinCAT。通过分步指南,包括实时Linux环境配置、EtherCAT主站安装、LinuxCNC集成及多轴同步控制实现,帮助开发者构建高性能、低成本的工业自动化解决方案。

weixin_42641741的博客 401

数据结构与算法——7-2 一元多项式的乘法与加法运算 (20分)

设计函数分别求两个一元多项式的乘积与和。 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。 输出格式: 输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输出0 0。 输入样例: 4 3 4 -5 2 6 1 -2 0 3 5 20 -7 4 3 1 输出样例: 15 24 -25 22 30 21 -10 2

qazwsxxxxxasd的博客 1484

深入浅出微服务架构:Eureka参数配置项详解

Eureka涉及到的参数配置项数量众多,它的很多功能都是通过参数配置来实现的,了解这些参数的含义有助于我们更好的应用Eureka的各种功能,下面对Eureka的配置项做具体介绍,供大家参考。 Eureka客户端配置 1、RegistryFetchIntervalSeconds 从eureka服务器注册表中获取注册信息的时间间隔(s),默认为30秒 2、InstanceInfoReplicationIntervalSeconds 复制实例变...

Java烂猪皮 1516

MATLAB新手必看:SVPWM七段式算法仿真全流程解析(附完整代码)

本文为MATLAB新手和电机控制初学者提供了SVPWM七段式算法的完整仿真与代码实现指南。文章详细解析了从扇区判断、矢量作用时间计算到PWM波形生成的全流程,并附带了可直接运行的MATLAB代码,帮助读者在理解FOC控制核心算法的基础上,快速掌握工程仿真与调试技巧。

weixin_29074295的博客 281

# 微服务架构:Eureka参数配置项详解

微服务架构:Eureka参数配置项详解 Eureka涉及到的参数配置项数量众多,它的很多功能都是通过参数配置来实现的,了解这些参数的含义有助于我们更好的应用Eureka的各种功能,下面对Eureka的配置项做具体介绍,供大家参考。 Eureka客户端配置 1、RegistryFetchIntervalSeconds 从eureka服务器注册表中获取注册信息的时...

github_39019743的博客 345

保姆级教程:用Seurat 5.0.1搞定单细胞测序数据从质控到细胞注释的全流程

本文提供了一份详细的Seurat 5.0.1单细胞测序数据分析教程,涵盖从数据质控到细胞注释的全流程。通过R代码示例和可视化分析,帮助用户掌握单细胞RNA测序数据处理的核心技术,包括数据标准化、降维聚类和细胞类型注释,适用于生物信息学研究和临床数据分析。

weixin_29067143的博客 196

整车电检工艺流程

本文是笔者在从事汽车行业智能制造领域过程,对于整车电检工艺流程的理解与总结。

qq_40664711的博客 1万+
上一篇: SpringBoot配置属性之其他
下一篇: Spring Boot中application.yml与bootstrap.yml的区别
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值