java B2B2C 仿淘宝电子商城系统-Spring Cloud Eureka参数配置项详解
Eureka涉及到的參數(shù)配置項(xiàng)數(shù)量眾多,它的很多功能都是通過參數(shù)配置來實(shí)現(xiàn)的,了解這些參數(shù)的含義有助于我們更好的應(yīng)用Eureka的各種功能,下面對Eureka的配置項(xiàng)做具體介紹,供大家參考。
需要JAVA Spring Cloud大型企業(yè)分布式微服務(wù)云構(gòu)建的B2B2C電子商務(wù)平臺源碼 一零三八七七四六二六
Eureka客戶端配置
1、RegistryFetchIntervalSeconds
從eureka服務(wù)器注冊表中獲取注冊信息的時間間隔(s),默認(rèn)為30秒
2、InstanceInfoReplicationIntervalSeconds
復(fù)制實(shí)例變化信息到eureka服務(wù)器所需要的時間間隔(s),默認(rèn)為30秒
3、InitialInstanceInfoReplicationIntervalSeconds
最初復(fù)制實(shí)例信息到eureka服務(wù)器所需的時間(s),默認(rèn)為40秒
4、EurekaServiceUrlPollIntervalSeconds
詢問Eureka服務(wù)url信息變化的時間間隔(s),默認(rèn)為300秒
5、ProxyHost
獲取eureka服務(wù)的代理主機(jī),默認(rèn)為null
6、ProxyProxyPort
獲取eureka服務(wù)的代理端口, 默認(rèn)為null
7、ProxyUserName
獲取eureka服務(wù)的代理用戶名,默認(rèn)為null
8、ProxyPassword
獲取eureka服務(wù)的代理密碼,默認(rèn)為null
9、GZipContent
eureka注冊表的內(nèi)容是否被壓縮,默認(rèn)為true,并且是在最好的網(wǎng)絡(luò)流量下被壓縮
10、EurekaServerReadTimeoutSeconds
eureka需要超時讀取之前需要等待的時間,默認(rèn)為8秒
11、EurekaServerConnectTimeoutSeconds
eureka需要超時連接之前需要等待的時間,默認(rèn)為5秒
12、BackupRegistryImpl
獲取實(shí)現(xiàn)了eureka客戶端在第一次啟動時讀取注冊表的信息作為回退選項(xiàng)的實(shí)現(xiàn)名稱
13、EurekaServerTotalConnections
eureka客戶端允許所有eureka服務(wù)器連接的總數(shù)目,默認(rèn)是200
14、EurekaServerTotalConnectionsPerHost
eureka客戶端允許eureka服務(wù)器主機(jī)連接的總數(shù)目,默認(rèn)是50
15、EurekaServerURLContext
表示eureka注冊中心的路徑,如果配置為eureka,則為 http://x.x.x.x:x/eureka 在eureka的配置文件中加入此配置表示eureka作為客戶端向注冊中心注冊,從而構(gòu)成eureka集群。此配置只有在eureka服務(wù)器ip地址列表是在DNS中才會用到,默認(rèn)為null
16、EurekaServerPort
獲取eureka服務(wù)器的端口,此配置只有在eureka服務(wù)器ip地址列表是在DNS中才會用到。默認(rèn)為null
17、EurekaServerDNSName
獲取要查詢的DNS名稱來獲得eureka服務(wù)器,此配置只有在eureka服務(wù)器ip地址列表是在DNS中才會用到。默認(rèn)為null
18、UseDnsForFetchingServiceUrls
eureka客戶端是否應(yīng)該使用DNS機(jī)制來獲取eureka服務(wù)器的地址列表,默認(rèn)為false
19、RegisterWithEureka
實(shí)例是否在eureka服務(wù)器上注冊自己的信息以供其他服務(wù)發(fā)現(xiàn),默認(rèn)為true
20、PreferSameZoneEureka
實(shí)例是否使用同一zone里的eureka服務(wù)器,默認(rèn)為true,理想狀態(tài)下,eureka客戶端與服務(wù)端是在同一zone下
21、AllowRedirects
服務(wù)器是否能夠重定向客戶端請求到備份服務(wù)器。 如果設(shè)置為false,服務(wù)器將直接處理請求,如果設(shè)置為true,它可能發(fā)送HTTP重定向到客戶端。默認(rèn)為false
22、LogDeltaDiff
是否記錄eureka服務(wù)器和客戶端之間在注冊表的信息方面的差異,默認(rèn)為false
23、DisableDelta(*)
默認(rèn)為false
24、fetchRegistryForRemoteRegions
eureka服務(wù)注冊表信息里的以逗號隔開的地區(qū)名單,如果不這樣返回這些地區(qū)名單,則客戶端啟動將會出錯。默認(rèn)為null
25、Region
獲取實(shí)例所在的地區(qū)。默認(rèn)為us-east-1
26、AvailabilityZones
獲取實(shí)例所在的地區(qū)下可用性的區(qū)域列表,用逗號隔開。
27、EurekaServerServiceUrls
Eureka服務(wù)器的連接,默認(rèn)為http://XXXX:X/eureka/,但是如果采用DNS方式獲取服務(wù)地址,則不需要配置此設(shè)置。
28、FilterOnlyUpInstances(*)
是否獲得處于開啟狀態(tài)的實(shí)例的應(yīng)用程序過濾之后的應(yīng)用程序。默認(rèn)為true
29、EurekaConnectionIdleTimeoutSeconds
Eureka服務(wù)的http請求關(guān)閉之前其響應(yīng)的時間,默認(rèn)為30 秒
30、FetchRegistry
此客戶端是否獲取eureka服務(wù)器注冊表上的注冊信息,默認(rèn)為true
31、RegistryRefreshSingleVipAddress
此客戶端只對一個單一的VIP注冊表的信息感興趣。默認(rèn)為null
32、HeartbeatExecutorThreadPoolSize(*)
心跳執(zhí)行程序線程池的大小,默認(rèn)為5
33、HeartbeatExecutorExponentialBackOffBound(*)
心跳執(zhí)行程序回退相關(guān)的屬性,是重試延遲的最大倍數(shù)值,默認(rèn)為10
34、CacheRefreshExecutorThreadPoolSize(*)
執(zhí)行程序緩存刷新線程池的大小,默認(rèn)為5
35、CacheRefreshExecutorExponentialBackOffBound
執(zhí)行程序指數(shù)回退刷新的相關(guān)屬性,是重試延遲的最大倍數(shù)值,默認(rèn)為10
36、DollarReplacement
eureka服務(wù)器序列化/反序列化的信息中獲取“$”符號的的替換字符串。默認(rèn)為“_-”
37、EscapeCharReplacement
eureka服務(wù)器序列化/反序列化的信息中獲取“”符號的的替換字符串。默認(rèn)為“_”
38、OnDemandUpdateStatusChange(*)
如果設(shè)置為true,客戶端的狀態(tài)更新將會點(diǎn)播更新到遠(yuǎn)程服務(wù)器上,默認(rèn)為true
39、EncoderName
這是一個短暫的編碼器的配置,如果最新的編碼器是穩(wěn)定的,則可以去除,默認(rèn)為null
40、DecoderName
這是一個短暫的解碼器的配置,如果最新的解碼器是穩(wěn)定的,則可以去除,默認(rèn)為null
41、ClientDataAccept(*)
客戶端數(shù)據(jù)接收
42、Experimental(*)
當(dāng)嘗試新功能遷移過程時,為了避免配置API污染,相應(yīng)的配置即可投入實(shí)驗(yàn)配置部分,默認(rèn)為null
實(shí)例微服務(wù)端配置
1、InstanceId
此實(shí)例注冊到eureka服務(wù)端的唯一的實(shí)例ID,其組成為spring.application.name: {spring.application.name}:spring.application.name:{spring.application.instance_id:${random.value}}
2、Appname
獲得在eureka服務(wù)上注冊的應(yīng)用程序的名字,默認(rèn)為unknow
3、AppGroupName
獲得在eureka服務(wù)上注冊的應(yīng)用程序組的名字,默認(rèn)為unknow
4、InstanceEnabledOnit(*)
實(shí)例注冊到eureka服務(wù)器時,是否開啟通訊,默認(rèn)為false
5、NonSecurePort
獲取該實(shí)例應(yīng)該接收通信的非安全端口。默認(rèn)為80
6、SecurePort
獲取該實(shí)例應(yīng)該接收通信的安全端口,默認(rèn)為443
7、NonSecurePortEnabled
該實(shí)例應(yīng)該接收通信的非安全端口是否啟用,默認(rèn)為true
8、SecurePortEnabled
該實(shí)例應(yīng)該接收通信的安全端口是否啟用,默認(rèn)為false
9、LeaseRenewalIntervalInSeconds
eureka客戶需要多長時間發(fā)送心跳給eureka服務(wù)器,表明它仍然活著,默認(rèn)為30 秒
10、LeaseExpirationDurationInSeconds
Eureka服務(wù)器在接收到實(shí)例的最后一次發(fā)出的心跳后,需要等待多久才可以將此實(shí)例刪除,默認(rèn)為90秒
11、VirtualHostName
此實(shí)例定義的虛擬主機(jī)名,其他實(shí)例將通過使用虛擬主機(jī)名找到該實(shí)例。
12、SecureVirtualHostName
此實(shí)例定義的安全虛擬主機(jī)名
13、ASGName(*)
與此實(shí)例相關(guān)聯(lián) AWS自動縮放組名稱。此項(xiàng)配置是在AWS環(huán)境專門使用的實(shí)例啟動,它已被用于流量停用后自動把一個實(shí)例退出服務(wù)。
14、HostName
與此實(shí)例相關(guān)聯(lián)的主機(jī)名,是其他實(shí)例可以用來進(jìn)行請求的準(zhǔn)確名稱
15、MetadataMap(*)
獲取與此實(shí)例相關(guān)聯(lián)的元數(shù)據(jù)(key,value)。這個信息被發(fā)送到eureka服務(wù)器,其他實(shí)例可以使用。
16、DataCenterInfo(*)
該實(shí)例被部署在數(shù)據(jù)中心
17、IpAddress
獲取實(shí)例的ip地址
18、StatusPageUrlPath(*)
獲取此實(shí)例狀態(tài)頁的URL路徑,然后構(gòu)造出主機(jī)名,安全端口等,默認(rèn)為/info
19、StatusPageUrl(*)
獲取此實(shí)例絕對狀態(tài)頁的URL路徑,為其他服務(wù)提供信息時來找到這個實(shí)例的狀態(tài)的路徑,默認(rèn)為null
20、HomePageUrlPath(*)
獲取此實(shí)例的相關(guān)主頁URL路徑,然后構(gòu)造出主機(jī)名,安全端口等,默認(rèn)為/
21、HomePageUrl(*)
獲取此實(shí)例的絕對主頁URL路徑,為其他服務(wù)提供信息時使用的路徑,默認(rèn)為null
22、HealthCheckUrlPath
獲取此實(shí)例的相對健康檢查URL路徑,默認(rèn)為/health
23、HealthCheckUrl
獲取此實(shí)例的絕對健康檢查URL路徑,默認(rèn)為null
24、SecureHealthCheckUrl
獲取此實(shí)例的絕對安全健康檢查網(wǎng)頁的URL路徑,默認(rèn)為null
25、DefaultAddressResolutionOrder
獲取實(shí)例的網(wǎng)絡(luò)地址,默認(rèn)為[]
26、Namespace
獲取用于查找屬性的命名空間,默認(rèn)為eureka
Eureka服務(wù)端配置
1、AWSAccessId
獲取aws訪問的id,主要用于彈性ip綁定,此配置是用于aws上的,默認(rèn)為null
2、AWSSecretKey
獲取aws私有秘鑰,主要用于彈性ip綁定,此配置是用于aws上的,默認(rèn)為null
3、EIPBindRebindRetries
獲取服務(wù)器嘗試綁定到候選的EIP的次數(shù),默認(rèn)為3
4、EIPBindingRetryIntervalMsWhenUnbound(*)
服務(wù)器檢查ip綁定的時間間隔,單位為毫秒,默認(rèn)為1 60 1000
5、EIPBindingRetryIntervalMs
與上面的是同一作用,僅僅是穩(wěn)定狀態(tài)檢查,默認(rèn)為5 60 1000
6、EnableSelfPreservation
自我保護(hù)模式,當(dāng)出現(xiàn)出現(xiàn)網(wǎng)絡(luò)分區(qū)、eureka在短時間內(nèi)丟失過多客戶端時,會進(jìn)入自我保護(hù)模式,即一個服務(wù)長時間沒有發(fā)送心跳,eureka也不會將其刪除,默認(rèn)為true
7、RenewalPercentThreshold(*)
閾值因子,默認(rèn)是0.85,如果閾值比最小值大,則自我保護(hù)模式開啟
8、RenewalThresholdUpdateIntervalMs
閾值更新的時間間隔,單位為毫秒,默認(rèn)為15 60 1000
9、PeerEurekaNodesUpdateIntervalMs(*)
集群里eureka節(jié)點(diǎn)的變化信息更新的時間間隔,單位為毫秒,默認(rèn)為10 60 1000
10、EnableReplicatedRequestCompression
復(fù)制的數(shù)據(jù)在發(fā)送請求時是否被壓縮,默認(rèn)為false
11、NumberOfReplicationRetries
獲取集群里服務(wù)器嘗試復(fù)制數(shù)據(jù)的次數(shù),默認(rèn)為5
12、PeerEurekaStatusRefreshTimeIntervalMs
服務(wù)器節(jié)點(diǎn)的狀態(tài)信息被更新的時間間隔,單位為毫秒,默認(rèn)為30 * 1000
13、WaitTimeInMsWhenSyncEmpty(*)
在Eureka服務(wù)器獲取不到集群里對等服務(wù)器上的實(shí)例時,需要等待的時間,單位為毫秒,默認(rèn)為100060 5
14、PeerNodeConnectTimeoutMs
連接對等節(jié)點(diǎn)服務(wù)器復(fù)制的超時的時間,單位為毫秒,默認(rèn)為200
15、PeerNodeReadTimeoutMs
讀取對等節(jié)點(diǎn)服務(wù)器復(fù)制的超時的時間,單位為毫秒,默認(rèn)為200
16、PeerNodeTotalConnections
獲取對等節(jié)點(diǎn)上http連接的總數(shù),默認(rèn)為1000
17、PeerNodeTotalConnectionsPerHost(*)
獲取特定的對等節(jié)點(diǎn)上http連接的總數(shù),默認(rèn)為500
18、PeerNodeConnectionIdleTimeoutSeconds(*)
http連接被清理之后服務(wù)器的空閑時間,默認(rèn)為30秒
19、RetentionTimeInMSInDeltaQueue(*)
客戶端保持增量信息緩存的時間,從而保證不會丟失這些信息,單位為毫秒,默認(rèn)為3 60 1000
20、DeltaRetentionTimerIntervalInMs
清理任務(wù)程序被喚醒的時間間隔,清理過期的增量信息,單位為毫秒,默認(rèn)為30 * 1000
21、EvictionIntervalTimerInMs
過期實(shí)例應(yīng)該啟動并運(yùn)行的時間間隔,單位為毫秒,默認(rèn)為60 * 1000
22、ASGQueryTimeoutMs(*)
查詢AWS上ASG(自動縮放組)信息的超時值,單位為毫秒,默認(rèn)為300
23、ASGUpdateIntervalMs
從AWS上更新ASG信息的時間間隔,單位為毫秒,默認(rèn)為5 60 1000
24、ASGCacheExpiryTimeoutMs(*)
緩存ASG信息的到期時間,單位為毫秒,默認(rèn)為10 60 1000
25、ResponseCacheAutoExpirationInSeconds(*)
當(dāng)注冊表信息被改變時,則其被保存在緩存中不失效的時間,默認(rèn)為180秒
26、ResponseCacheUpdateIntervalMs(*)
客戶端的有效負(fù)載緩存應(yīng)該更新的時間間隔,默認(rèn)為30 * 1000毫秒
27、UseReadOnlyResponseCache(*)
目前采用的是二級緩存策略,一個是讀寫高速緩存過期策略,另一個沒有過期只有只讀緩存,默認(rèn)為true,表示只讀緩存
28、DisableDelta(*)
增量信息是否可以提供給客戶端看,默認(rèn)為false
29、MaxIdleThreadInMinutesAgeForStatusReplication(*)
狀態(tài)復(fù)制線程可以保持存活的空閑時間,默認(rèn)為10分鐘
30、MinThreadsForStatusReplication
被用于狀態(tài)復(fù)制的線程的最小數(shù)目,默認(rèn)為1
31、MaxThreadsForStatusReplication
被用于狀態(tài)復(fù)制的線程的最大數(shù)目,默認(rèn)為1
32、MaxElementsInStatusReplicationPool
可允許的狀態(tài)復(fù)制池備份復(fù)制事件的最大數(shù)量,默認(rèn)為10000
33、SyncWhenTimestampDiffers
當(dāng)時間變化實(shí)例是否跟著同步,默認(rèn)為true
34、RegistrySyncRetries
當(dāng)eureka服務(wù)器啟動時嘗試去獲取集群里其他服務(wù)器上的注冊信息的次數(shù),默認(rèn)為5
35、RegistrySyncRetryWaitMs
當(dāng)eureka服務(wù)器啟動時獲取其他服務(wù)器的注冊信息失敗時,會再次嘗試獲取,期間需要等待的時間,默認(rèn)為30 * 1000毫秒
36、MaxElementsInPeerReplicationPool(*)
復(fù)制池備份復(fù)制事件的最大數(shù)量,默認(rèn)為10000
37、MaxIdleThreadAgeInMinutesForPeerReplication(*)
復(fù)制線程可以保持存活的空閑時間,默認(rèn)為15分鐘
38、MinThreadsForPeerReplication(*)
獲取將被用于復(fù)制線程的最小數(shù)目,默認(rèn)為5
39、MaxThreadsForPeerReplication
獲取將被用于復(fù)制線程的最大數(shù)目,默認(rèn)為20
40、MaxTimeForReplication(*)
嘗試在丟棄復(fù)制事件之前進(jìn)行復(fù)制的時間,默認(rèn)為30000毫秒
41、PrimeAwsReplicaConnections(*)
對集群中服務(wù)器節(jié)點(diǎn)的連接是否應(yīng)該準(zhǔn)備,默認(rèn)為true
42、DisableDeltaForRemoteRegions(*)
增量信息是否可以提供給客戶端或一些遠(yuǎn)程地區(qū),默認(rèn)為false
43、RemoteRegionConnectTimeoutMs(*)
連接到對等遠(yuǎn)程地eureka節(jié)點(diǎn)的超時時間,默認(rèn)為1000毫秒
44、RemoteRegionReadTimeoutMs(*)
獲取從遠(yuǎn)程地區(qū)eureka節(jié)點(diǎn)讀取信息的超時時間,默認(rèn)為1000毫秒
45、RemoteRegionTotalConnections
獲取遠(yuǎn)程地區(qū)對等節(jié)點(diǎn)上http連接的總數(shù),默認(rèn)為1000
46、RemoteRegionTotalConnectionsPerHost
獲取遠(yuǎn)程地區(qū)特定的對等節(jié)點(diǎn)上http連接的總數(shù),默認(rèn)為500
47、RemoteRegionConnectionIdleTimeoutSeconds
http連接被清理之后遠(yuǎn)程地區(qū)服務(wù)器的空閑時間,默認(rèn)為30秒
48、GZipContentFromRemoteRegion(*)
eureka服務(wù)器中獲取的內(nèi)容是否在遠(yuǎn)程地區(qū)被壓縮,默認(rèn)為true
49、RemoteRegionUrlsWithName
針對遠(yuǎn)程地區(qū)發(fā)現(xiàn)的網(wǎng)址域名的map
50、RemoteRegionUrls
遠(yuǎn)程地區(qū)的URL列表
51、RemoteRegionAppWhitelist(*)
必須通過遠(yuǎn)程區(qū)域中檢索的應(yīng)用程序的列表
52、RemoteRegionRegistryFetchInterval
從遠(yuǎn)程區(qū)域取出該注冊表的信息的時間間隔,默認(rèn)為30秒
53、RemoteRegionFetchThreadPoolSize
用于執(zhí)行遠(yuǎn)程區(qū)域注冊表請求的線程池的大小,默認(rèn)為20
54、RemoteRegionTrustStore
用來合格請求遠(yuǎn)程區(qū)域注冊表的信任存儲文件,默認(rèn)為空
55、RemoteRegionTrustStorePassword
獲取偏遠(yuǎn)地區(qū)信任存儲文件的密碼,默認(rèn)為“changeit”
56、disableTransparentFallbackToOtherRegion(*)
如果在遠(yuǎn)程區(qū)域本地沒有實(shí)例運(yùn)行,對于應(yīng)用程序回退的舊行為是否被禁用, 默認(rèn)為false
57、BatchReplication(*)
表示集群節(jié)點(diǎn)之間的復(fù)制是否為了網(wǎng)絡(luò)效率而進(jìn)行批處理,默認(rèn)為false
58、LogIdentityHeaders(*)
Eureka服務(wù)器是否應(yīng)該登錄clientAuthHeaders,默認(rèn)為true
59、RateLimiterEnabled
限流是否應(yīng)啟用或禁用,默認(rèn)為false
60、RateLimiterThrottleStandardClients
是否對標(biāo)準(zhǔn)客戶端進(jìn)行限流,默認(rèn)false
61、RateLimiterPrivilegedClients(*)
認(rèn)證的客戶端列表,這里是除了標(biāo)準(zhǔn)的eureka Java客戶端。
62、RateLimiterBurstSize(*)
速率限制的burst size ,默認(rèn)為10,這里用的是令牌桶算法
63、RateLimiterRegistryFetchAverageRate(*)
速率限制器用的是令牌桶算法,此配置指定平均執(zhí)行注冊請求速率,默認(rèn)為500
64、RateLimiterFullFetchAverageRate(*)
速率限制器用的是令牌桶算法,此配置指定平均執(zhí)行請求速率,默認(rèn)為100
65、ListAutoScalingGroupsRoleName(*)
用來描述從AWS第三賬戶的自動縮放組中的角色名稱,默認(rèn)為“ListAutoScalingGroups”
66、JsonCodecName(*)
如果沒有設(shè)置默認(rèn)的編解碼器將使用全JSON編解碼器,獲取的是編碼器的類名稱
67、XmlCodecName(*)
如果沒有設(shè)置默認(rèn)的編解碼器將使用xml編解碼器,獲取的是編碼器的類名稱
68、BindingStrategy(*)
獲取配置綁定EIP或Route53的策略。
69、Route53DomainTTL(*)
用于建立route53域的ttl,默認(rèn)為301
70、Route53BindRebindRetries(*)
服務(wù)器嘗試綁定到候選Route53域的次數(shù),默認(rèn)為3
71、Route53BindingRetryIntervalMs(*)
服務(wù)器應(yīng)該檢查是否和Route53域綁定的時間間隔,默認(rèn)為5 60 1000毫秒
72、Experimental(*)
當(dāng)嘗試新功能遷移過程時,為了避免配置API污染,相應(yīng)的配置即可投入實(shí)驗(yàn)配置部分,默認(rèn)為null。
以上是Eureka配置項(xiàng)的詳細(xì)說明,分為Eureka客戶端配置、Eureka服務(wù)端配置和微服務(wù)端配置,一共100多項(xiàng),其中有很多配置參數(shù)并不需要我們?nèi)バ薷?#xff0c;使用默認(rèn)的就好,有些跟我們業(yè)務(wù)相關(guān)的配置參數(shù)可根據(jù)需要自行設(shè)置。java B2B2C 仿淘寶電子商城系統(tǒng)
轉(zhuǎn)載于:https://juejin.im/post/5c452035e51d455174119062
總結(jié)
以上是生活随笔為你收集整理的java B2B2C 仿淘宝电子商城系统-Spring Cloud Eureka参数配置项详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。