Eureka注册中心、自我保护机制、显示IP地址。关闭客户端Client后,页面Status处仍然显示up_不显示主机名

文章主要讨论了两个Eureka服务注册与发现中的问题:一是服务已关闭但注册中心仍显示为UP状态,这归因于Eureka的自我保护机制,可以通过修改EurekaServer配置文件关闭此功能;二是服务信息中显示IP地址而非主机名,这可能是配置问题,通常服务名和端口会显示为主机名,若要显示特定IP,需要调整服务配置。

一、什么是Eureka

1、Eureka 是 Netflix 开源的基于 REST 的服务治理解决方案,Spring Cloud 集成了 Eureka(即:Spring Cloud Eureka),提供服务注册和服务发现的功能,能和基于 Spring Boot 搭建的微服务应用完成整合,开箱
即用。
2、Spring Cloud 对 Netflix 开源组件进行了二次封装,也就是 Spring Cloud Netflix。Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件中的一部分。实际开发中,我们就使用 Spring Cloud Eureka 来完成服务治理即可。

二、Spring Cloud Eureka 的组成

主要包含两部分:Eureka Server(注册中心)、Eureka Client

1、Eureka Server 是提供服务注册、服务发现的服务端组件,也称作服务注册中心

2、Eureka Client 是客户端组件,它的功能是:所有要进行注册的微服务(服务提供/消费者)通过
Eureka Client 连接到 Eureka Server,完成注册。

举个例子:注册中心(Eureka Server)就相当于 一个电商平台;服务提供者(Eureka Client)相当于
卖家在平台上注册了一个店铺,提供出售商品的服务;服务消费者(另一个 Eureka Client)相当于用户
在平台上注册账号,然后就可以在平台的各个店铺中购买商品了;同时平台(Eureka Server)还提供管
理买家与卖家信息的功能,比如卖家是否在线、可以提供哪些具体服务等。

三、解决两个问题:

3.1 关闭微服务,注册中心还是显示UP状态
3.2 Status处不显示主机名,显示IP地址

下面正式开始:

1、 UP:表示这个服务是可用的;DOWN:表示这个服务不可用

报错: 为什么停止了服务,刷新还是显示 UP?还报错:紧急!Eureka可能错误地声称实例已经启动,但实际上并没有。续订量小于阔值,因此为了安全起见,实例不会过期。如下图:
在这里插入图片描述
原因: Eureka 的 ”自我保护“ 功能,具体信息如下:

自我保护:

当我们在本地调试基于 Eureka 的程序时,基本上都会碰到这样一个问题,在服务注册中心的信息面板中出现类似上面的红色警告信息。

实际上,该警告就是触发了 Eureka Server 的自我保护机制。之前我们介绍过,服务注册到 Eureka Server 之后,会维护一个心跳连接,告诉 EurekaServer 自己还活着。EurekaServer 在运行期间,会统计心跳失败的比例在 15 分钟之内是否低于 85%,如果出现低于的情况(在单机调试的时候很容易满足,实际在生产环境上通常是由于网络不稳定导致),EurekaServer 会将当前的实例注册信息保护起来,让这些实例不会过期,尽可能保护这些注册信息。 但是,在这段保护期间内实例若出现问题,那么客户端很容易拿到实际已经不存在的服务实例,会出现调用失败的情况,所以客户端必须要有容错机制,比如可以使用请求重试、断路器等机制。

在这里插入图片描述

解决: 首先在 Eureka Server 的配置文件中加入:

在这里插入图片描述

然后在 Eureka Client 的配置文件中加入:

在这里插入图片描述

重启后测试: 没有停掉客户端时:

在这里插入图片描述

2、显示IP地址、不显示主机名、指定IP跳转地址

1、首先默认情况下,显示:主机名:在 yml 文件中设置的服务名:在 yml 文件中设置的端口号
在这里插入图片描述

2、假如不显示主机名,而显示 IP 地址(此时的 IP 地址是系统生成的,每个人不一样):

在这里插入图片描述

3、指定 IP 地址:

在这里插入图片描述

至此,内容结束,主页还有更多干货哦!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小学鸡!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值