介紹
SpringCloud是一個完整的微服務治理框架,包括服務發現和註冊,服務網關,熔斷,限流,負載均衡和鏈路跟蹤等組件。node
SpringCloud-Eureka主要提供服務註冊和發現功能。本文提供了該組件配置的全面說明。json
術語和概念
- Eureka服務端:負責服務註冊、發現並管理每項服務的中心
- Eureka實例:服務(如訂單系統)部署多個服務器,每一個服務器上提供的服務都是實例。
- Eureka服務:指提供特定服務功能的服務,例如:訂單系統,同一服務能夠提供多個實例;
- Eureka客戶端:主要向服務中心註冊本身成爲服務。但它既能夠是服務提供者,也能夠是消費者。它與Eureka實例感受類似,但實際上意義不一樣。
配置說明
Eureka服務器配置
-
-
-
eureka.server.enable-self-preservation=
true
-
-
eureka.server.eviction-interval-timer-in-ms= 60000
-
-
eureka.server.delta-retention-timer-interval-in-ms=0
-
-
eureka.server.disable-delta=
false
-
-
eureka.server.log-identity-headers=
true
-
-
eureka.server.rate-limiter-burst-size=10
-
-
eureka.server.rate-limiter-enabled=
false
-
-
eureka.server.rate-limiter-full-fetch-average-rate=100
-
-
eureka.server.rate-limiter-throttle-standard-clients=
false
-
-
eureka.server.rate-limiter-registry-fetch-average-rate=500
-
-
eureka.server.rate-limiter-privileged-clients=
-
-
eureka.server.renewal-percent-threshold=0.85
-
-
eureka.server.renewal-threshold-update-interval-ms=0
-
-
eureka.server.response-cache-auto-expiration-in-seconds=180
-
-
eureka.server.response-cache-update-interval-ms=0
-
-
eureka.server.retention-time-in-m
-s-in-delta-queue=0
-
-
eureka.server.sync-when-timestamp-differs=
true
-
-
eureka.server.use-read-only-response-cache=
true
-
-
-
-
eureka.server.json-codec-name=
-
-
eureka.server.property-resolver=
-
-
eureka.server.xml-codec-name=
-
-
-
-
eureka.server.enable-replicated-request-compression=
false
-
-
eureka.server.batch-replication=
false
-
-
eureka.server.max-elements-in-peer-replication-pool=10000
-
-
eureka.server.max-elements-in-status-replication-pool=10000
-
-
eureka.server.max-idle-thread-age-in-minutes-for-peer-replication=15
-
-
eureka.server.max-idle-thread-in-minutes-age-for-status-replication=15
-
-
eureka.server.max-threads-for-peer-replication=20
-
-
eureka.server.max-threads-for-status-replication=1
-
Communication time between
-
eureka.server.max-time-for-replication=30000
-
-
eureka.server.min-available-instances-for-peer-replication=-1
-
The minimum number of threads opened between
-
eureka.server.min-threads-for-peer-replication=5
-
-
eureka.server.min-threads-for-status-replication=1
-
Number of
times that can be retried when copying data between
-
eureka.server.number-of-replication-retries=5
-
-
eureka.server.peer-eureka-nodes-update-interval-ms=600000
-
-
eureka.server.peer-eureka-status-refresh-time-interval-ms=0
-
-
eureka.server.peer-node-connect-timeout-ms=200
-
-
eureka.server.peer-node-connection-idle-timeout-seconds=30
-
-
eureka.server.peer-node-read-timeout-ms=200
-
-
eureka.server.peer-node-total-connections=1000
-
-
eureka.server.peer-node-total-connections-per-host=10
-
-
eureka.server.registry-sync-retries=
-
-
eureka.server.registry-sync-retry-wait-ms=
-
-
eureka.server.wait-time-in-ms-when-sync-empty=0
-
-
-
-
eureka.server.disable-delta-for-remote-regions=
false
-
-
eureka.server.disable-transparent-fallback-to-other-region=
false
-
-
eureka.server.g-zip-content-from-remote-region=
true
-
-
eureka.server.remote-region-connect-timeout-ms=1000
-
-
eureka.server.remote-region-app-whitelist.
-
-
eureka.server.remote-region-connection-idle-timeout-seconds=30
-
-
eureka.server.remote-region-fetch-thread-pool-size=20
-
-
eureka.server.remote-region-read-timeout-ms=1000
-
-
eureka.server.remote-region-registry-fetch-interval=30
-
-
eureka.server.remote-region-total-connections=1000
-
-
eureka.server.remote-region-total-connections-per-host=50
-
-
eureka.server.remote-region-trust-store=
-
-
eureka.server.remote-region-trust-store-password=
-
-
eureka.server.remote-region-urls=
-
-
eureka.server.remote-region-urls-with-name.
-
-
-
-
eureka.server.a
-s-g-cache-expiry-timeout-ms=0
-
-
eureka.server.a
-s-g-query-timeout-ms=300
-
-
eureka.server.a
-s-g-update-interval-ms=0
-
-
eureka.server.a-w
-s-access-id=
-
-
eureka.server.a-w
-s-secret-key=
-
-
eureka.server.binding-strategy=eip
-
-
eureka.server.list-auto-scaling-groups-role-name=
-
-
eureka.server.prime-aws-replica-connections=
true
-
-
eureka.server.e-i-p-bind-rebind-retries=3
-
-
eureka.server.e-i-p-binding-retry-interval-ms=10
-
-
eureka.server.e-i-p-binding-retry-interval-ms-when-unbound=
-
-
eureka.server.route53-bind-rebind-retries=3
-
-
eureka.server.route53-binding-retry-interval-ms=30
-
-
eureka.server.route53-domain-t-t
-l=10
Eureka Instacen配置
-
#Hostname
of the service registry instance
-
eureka.instance.hostname=localhost
-
#
Register the application group name in the Eureka service
-
eureka.instance.app-group-
name=
-
#
Register the application name in the Eureka service
-
-
# Unique ID
of the instance registered to the service center
-
eureka.instance.instance-id=
-
#IP address
of the instance
-
eureka.instance.ip-address=
-
#Instance, whether IP
is preferred over hostname
-
eureka.instance.prefer-ip-address=false
-
-
#Group
name associated with this instance for automatic extension of the AWS platform,
-
eureka.instance.a-s-g-
name=
-
#Deploy the data center
for this instance
-
eureka.instance.data-center-info=
-
#
Default address resolution order
-
eureka.instance.
default-address-resolution-order=
-
#Instance environment configuration
-
eureka.instance.environment=
-
#Initialize the instance
and register to the initial state of the service center
-
eureka.instance.initial-status=up
-
# Indicate whether
as long as this instance is registered to the service center, immediately communicate
-
eureka.instance.instance-enabled-onit=false
-
#The namespace
of the service instance for finding attributes
-
eureka.instance.namespace=eureka
-
#The child definition metadata
of the service instance can be accepted by the service center.
-
eureka.instance.metadata-map.test = test
-
-
#Service center deletes the waiting time (
in seconds) of this service instance, and the time interval is the heartbeat time received by the last service center.
-
eureka.instance.lease-expiration-duration-
in-seconds=90
-
# The interval at which the instance sends a heartbeat
to the service center to indicate that the service instance is available.
-
eureka.instance.lease-renewal-interval-
in-seconds=30
-
#Instance, registration service center, the number
of communication opened by default
-
eureka.instance.registry.
default-open-for-traffic-count=1
-
#Number
of renewals per minute
-
eureka.instance.registry.expected-number-
of-renews-per-min=1
-
-
#Instance health check url,
absolute path
-
eureka.instance.health-check-url=
-
#Instance health check url, relative path
-
eureka.instance.health-check-url-path=/health
-
#Instance
's home page url, absolute path
-
eureka.instance.home-page-url=
-
#Instance's home page url, relative path
-
eureka.instance.home-page-url-path=/
-
#Instance security health check url,
absolute path
-
eureka.instance.secure-health-check-url=
-
-
eureka.instance.secure-port=
443
-
#httpsCommunication port
is enabled
-
eureka.instance.secure-port-enabled=false
-
-
eureka.instance.non-secure-port=
80
-
#httpCommunication port
is enabled
-
eureka.instance.non-secure-port-enabled=true
-
#Security
virtual host name (https) for this instance
-
eureka.instance.secure-
virtual-host-name=unknown
-
#
Virtual host name of this instance (http)
-
eureka.instance.
virtual-host-name=unknown
-
#The status
of the instance is rendered url, absolute path
-
eureka.instance.status-page-url=
-
#The status
of the instance is rendered url, relative path
-
eureka.instance.status-page-url-path=/status
Eureka客戶端配置
-
-
eureka.client.enabled=
true
-
-
eureka.client.register-with-eureka=
false
-
-
eureka.client.fetch-registry=
false
-
-
eureka.client.filter-only-up-instances=
true
-
-
eureka.client.serviceUrl.defaultZone=http://
${eureka.instance.hostname}:${server.port}/eureka/
-
-
-
eureka.client.eureka-connection-idle-timeout-seconds=30
-
-
eureka.client.eureka-server-connect-timeout-seconds=5
-
-
eureka.client.eureka-server-read-timeout-seconds=8
-
-
eureka.client.eureka-server-total-connections=200
-
-
eureka.client.eureka-server-total-connections-per-host=50
-
-
eureka.client.cache-refresh-executor-exponential-back-off-bound=10
-
-
eureka.client.cache-refresh-executor-thread-pool-size=2
-
-
eureka.client.heartbeat-executor-exponential-back-off-bound=10
-
-
eureka.client.heartbeat-executor-thread-pool-size=5
-
-
eureka.client.eureka-service-url-poll-interval-seconds=300
-
-
eureka.client.initial-instance-info-replication-interval-seconds=40
-
-
eureka.client.instance-info-replication-interval-seconds=30
-
-
eureka.client.registry-fetch-interval-seconds=30
-
-
-
eureka.client.region=us-east-1
-
-
eureka.client.prefer-same-zone-eureka=
true
-
-
eureka.client.availability-zones.china=defaultZone,defaultZone1,defaultZone2
-
The list of comma-separated regions
in the
-
eureka.client.fetch-remote-regions-registry=
-
-
eureka.client.allow-redirects=
false
-
-
eureka.client.client-data-accept=
-
-
eureka.client.disable-delta=
false
-
-
eureka.client.escape-char-replacement=__
-
-
eureka.client.dollar-replacement=
"_-"
-
-
eureka.client.g-zip-content=
true
-
-
eureka.client.log-delta-diff=
false
-
-
eureka.client.on-demand-update-status-change=
true
-
-
eureka.client.registry-refresh-single-vip-address=
-
-
eureka.client.should-enforce-registration-at-init=
false
-
-
eureka.client.should-unregister-on-shutdown=
true
-
-
-
eureka.client.proxy-host=
-
-
eureka.client.proxy-password=
-
-
eureka.client.proxy-port=
-
-
eureka.client.proxy-user-name=
-
-
-
eureka.client.property-resolver=
-
-
eureka.client.backup-registry-impl=
-
-
eureka.client.decoder-name=
-
-
eureka.client.encoder-name=
-
-
-
eureka.client.use-dns-for-fetching-service-urls=
false
-
-
eureka.client.eureka-server
-d-n-s-name=
-
-
eureka.client.eureka-server-port=
-
-
eureka.client.eureka-server-u-r
-l-context=