Spring Cloud Eureka 的一些配置
Eeureka注册时使用 IP 而不是 Hostname
Eureka的 client 注册到 server 时默认是使用 hostname 而不是 ip , 这就导致client在多台机器时,服务间相互调用时也会使用hostname进行调用,从而调用失败。
这时候就需要使用ip来服务到eureka-server上,需要在eureka的client增加配置如下:
客户端配置:
eureka.instance.prefer-ip-address=true eureka.instance.instance-id=${spring.cloud.client.ipAddress}:${server.port}
配置如下:
如果关闭服务后,eureka注册中心不能及时刷新,可以使用下面的配置
服务端配置:
# 此处关闭可以防止问题(测试环境可以设置为false):Eureka server由于开启并引入了SELF PRESERVATION模式,
# 导致registry的信息不会因为过期而被剔除掉,直到退出SELF PRESERVATION模式才能剔除。
eureka.server.enable-self-preservation=false
#剔除失效服务间隔
eureka.server.eviction-interval-timer-in-ms=2000
客户端配置
#Eureka客户端向服务端发送心跳的时间间隔,单位为秒(客户端告诉服务端自己会按照该规则) eureka.instance.lease-renewal-interval-in-seconds =10 #Eureka服务端在收到最后一次心跳之后等待的时间上限,单位为秒,超过则剔除(客户端告诉服务端按照此规则等待自己) eureka.instance.lease-expiration-duration-in-seconds =5