SpringCloud——服务治理机制笔记
服务治理机制
服务提供者
服务注册
服务提供者 在启动的时候会通过发送REST请求的方式将自己注册到Eureka Server上,同时带上了自身服务的一些元数据信息。
eureka.client.register-with-eureka=true:启动注册操作
服务同步
服务续约
eureka.instance.lease-renewal-interval-in-seconds=30:用于定义服务续约任务的调用间隔时间,默认30秒
eureka.instance.lease-expiration-duration-in-seconds=90:用于定义服务失效的时间,默认为90秒
服务消费者
获取服务
服务调用
服务下线
服务注册中心
失效剔除
自我保护
eureka.server.enable-self-preservation=false:关闭保护机制(确保注册中心可以将不可用的实例正确剔除)
源码分析
DiscoveryClient类
这个类用于帮助与Eureka Server相互协作。
Eureka Client负责下面的任务:
- 向Eureka Server注册服务实例
- 向Eureka Server服务租约
- 当服务关闭期间,向Eureka Server取消租约
- 查询Eureka Server中的服务实例列表
Eureka Client还需要配置一个Eureka Server的URL列表
Region、Zone
serviceUrls
服务注册
服务获取与服务续约
服务注册中心处理
配置详解
Eureka 客户端的配置主要分为以下两个方面:
- 服务注册相关的配置信息,包括服务注册中心的地址、服务获取的间隔时间、可用区域等。
- 服务实例相关的配置信息,包括服务实例的名称、IP地址、端口号、健康检查路径等。
注:通过设置该类中的enableSelfPreservation参数来关闭注册中心的"自我保护"功能,以防止关闭的实例无法被服务注册中心剔除的问题
服务注册类配置
指定注册中心
eureka.client.serviceUrl.defaultZone=http://localhost:1111/eureka/
or
eureka.client.serviceUrl.defaultZone=http://peer1:1111/eureka/,http://peer2:1112/eureka/
安全校验
http://<username>:<password>@localhost:1111/eureka/
其中<username>、<password>分别为安全校验信息的用户名、密码
其他配置
服务实例类配置
- 元数据
它是Eureka客户端在向服务注册中心发送注册请求时,用来描述自身服务信息的对象,其中包含了一些标准化的元数据,比如服务名称、实例名称、实例IP、实例端口等用于服务治理的重要信息;以及一些用于负载均衡策略或是其他特殊用途的自定义元数据信息eureka.instance.metadataMap.zone=shanghai
-
实例名配置
- 端点配置
- 健康监测
- 其他配置
跨平台支持
- 通讯协议
略。。。
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/opensource/195090.html