![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringCloud
文章平均质量分 76
xyx-Eshang
潜心静学,保持谦逊
展开
-
SpringCloud | 10.Eureka Server的自我保护机制、修改Eureka Server的服务注销时间
10、Eureka 源码解析 之 Eureka Server 自我保护机制 Eureka Server 在运行期间,如果在15min内有超过15%的客户端节点都没有正常的心跳,那么 Eureka Server 就会进入自我保护机制,不再注销(剔除、下线)服务。默认情况下,自我保护机制是被开启的。建议:在 Eureka Server 中添加参数,并将值设为false即可关闭自我保护机制。2.EurekaServer服务注销间隔 前文提到,默认配置下,一个服务90s未发送心跳,就会被判定为宕机(DOWN原创 2022-06-15 16:31:10 · 241 阅读 · 0 评论 -
SpringCloud | 09.修改实例的心跳时间、续约到期
day1-22-显示IP与服务续约时间设置默认情况下,一个实例在注册后,每隔 30s 向 Eureka Server 发送一次心跳。我们可以在 实例 的配置文件中修改参数来自定义心跳间隔时间。2.服务续约时间默认情况下,若一个实例持续 90s 未发送心跳,就会被 Eureka Server 认为宕机(但并未被注销,只是提示DOWN)。我们可以在 实例 的配置文件中修改参数来自定义服务续约时间。...原创 2022-06-15 16:29:58 · 511 阅读 · 0 评论 -
SpringCloud | 08.修改实例的instance-id
[外链图片转存中…(img-AGGn5wyV-1655281702211)]图中圈起来的部分就是instance-id。这部分的默认格式为:2.自定义instance-id可以在配置文件中自定义instance-id。在配置文件中添加参数,作为演示我们将值设置为 abc。重启启动实例。打开浏览器,进入 Eureka Server 查看实例注册信息:[外链图片转存中…(img-xwtHVyGa-1655281702212)]以 内网ip地址:端口号 的形式定义instance-id。用 获取内网ip地址原创 2022-06-15 16:28:32 · 1154 阅读 · 0 评论 -
SpringCloud | 07.@LoadBalanced - 直接使用实例名发起访问
spring cloud eureka 消费者使用服务名访问,不能访问的问题使用spring cloud测试负载均衡时报java.lang.IllegalStateException: Request URI does not contain a valid hostname 先前我们希望访问一个已注册的服务时,我们首先要为 提供者 配置好公网IP,在启动后,调用者 获取实例的元数据,再从元数据中获取公网IP和端口号,随后才能发起请求进行调用。这样的话就存在诸多限制: 可以直接使用服务名进行调用。核心要原创 2022-06-15 16:27:21 · 254 阅读 · 0 评论 -
SpringCloud | 06.Eureka Server的集群部署
day1-19-eureka:高可用的引入day1-20-server间的相互注册day1-21-服务注册到多个EurekaServer 微服务的所有操作都依赖于 Eureka Server ,一旦其宕机,整个系统都无法正常运作。因此我们可以部署多个 Eureka Server 以搭建集群,提高其可用性。集群搭建的核心有三点(针对三个不同角色):[创建项目] 创建好项目,结构如下:[配置EurekaServer][相互注册]:每台 Eureka Server 都需要注册到其他的 Eureka Server原创 2022-06-15 16:26:12 · 230 阅读 · 0 评论 -
SpringCloud | 05.通过Eureka Client获取Eureka中的元数据
day1-18获取微服务的调用路径获取元数据的前提是:有元数据,即已启动 Eureka Server ,且有实例完成了注册。元数据需要通过 EurekaClient 获取,首先在需要获取元数据的项目中导入 EurekaClient :在需要获取元数据的类中,使用获取 EurekaClient 对象:通过这个 EurekaClient 对象获取 InstanceInfoList 实例列表(当应用采用集群部署时,一个应用就会有多个实例)根据需求获取指定的 InstanceInfo 对象(我这边由于没有集群原创 2022-06-15 16:23:57 · 747 阅读 · 0 评论 -
SpringCloud | 04.搭建Eureka Server注册中心,并注册服务
所谓Eureka Server注册中心,本质上也是一个服务,即是一个项目,一个工程。[创建项目] 在父工程下创建名为eureka_server_demo的SpringBoot项目,导入"Eureka Server"依赖;[修改配置信息] 修改端口、服务名,配置Eureka Server地址:Eureka Server的地址值是固定的。此后其他的服务希望注册到Eureka Server时,都需要先配置好它的地址信息;[开启EurekaServer] 在启动类中添加指明本项目就是Eureka Serve原创 2022-06-13 16:54:06 · 126 阅读 · 0 评论 -
SpringCloud | 03.Eureka概述
day1-15-注册中心:eureka概述简言之,Eureka是能实现注册中心功能的一套编程规则。Eureka完全实现了注册中心的各个工作步骤。由于间隔的存在,有可能会出现:增量注册信息尚未及时被更新到调用者的内存中,提供者便已宕机。此时若发起调用便会失败。 先前,服务调用者借助Eureka Client从Eureka Server中拉取了注册信息,并存储在了内存中。此后服务调用者便可以根据内存中的注册信息,对服务提供者发起调用。 上面提到,调用者拉取注册信息存在30s的间隔,这导致注册信息的更新并非是原创 2022-06-13 16:53:24 · 124 阅读 · 0 评论 -
SpringCloud | 02.注册中心概述
day1-14-注册中心:概述以上文举例,我们使用原始方式实现远程服务的调用,存在诸多问题。其中一个点是:所有的url都是通过硬编码的方式(在代码或配置文件中写死)配置的,若url发生变动,系统必然要大改,耦合度太高; 注册中心就是专门为解决这个问题而产生的。注册中心可以理解为是"服务提供者的通讯录",它记录了所有服务提供者的访问路径,且每过一定时间就向服务提供者发起健康检查,若服务宕机,注册中心就注销该服务。 总结下来,注册中心的功能: 常用的注册中心有以下四种: 常用的注册中心有以下 常用的注原创 2022-06-13 13:17:04 · 198 阅读 · 0 评论 -
SpringCloud | 01.使用RestTemplate实现远程服务的调用
day1-12-RestTemplate调用远程服务该类中拥有多个发送Http请求的方法。使用的步骤如下:参数列表中的Class用于指定返回值类型。[GET][POST][服务准备] 在远程服务器(82.157.xx.xxx)的8081端口部署项目 test_resttemplate_02 ,有接口"/test/sayHello";[创建调用者服务] 编写项目 test_resttemplate_01 ,设计接口"/test/sayHelloByRestTemplate",作用是访问远程服务器中tes...原创 2022-06-13 12:23:28 · 482 阅读 · 0 评论