一、自我保护
保护模式主要在一组客户端和 Eureka Server 之间存在网络分区场景时使用。一旦进入保护模式,Eureka Server 将会尝试保护其服务的注册表中的信息,不再删除服务注册表中的数据。当网络故障恢复后,该 Eureka Server 节点会自动退出保护模式。
可以通过在注册中心eureka-server中将自我保护模式关闭
这个时候访问eureka的控制台,就可以证明Eureka server已经进入了自我保护模式,显示如下
二、自定义 Eureka 的 InstanceID
一般客户端在注册时,服务的InstanceID的是默认值是“主机名:服务名称:服务端口”
按照格式定义就是:
eureka.instance.instance-id=${spring.application.name}:${spring.cloud.client.ip-address}:${server.port}
这里我们自定义改成服务ip+服务端口,当然还需加一个配置才能让跳转的链接变成我们想要的效果:
显示如下:
三、Eureka开发时快速移除失效服务
在实际开发过程中,我们可能会不停地重启服务,由于 Eureka 有自己的保护机制,故节点下线后,服务信息还会一直存在于 Eureka 中。我们可以通过增加一些配置让移除的速度更快一点,当然只在开发环境下使用,生产环境下不推荐使用
(1)、在eureka-server中加入配置
(2)、在具体的(eureka-client)客户端服务中加入配置
(3)、在具体的客户端服务pom.xml文件中引入actuator的依赖