Eureka心跳机制
	客户端:
		1.每隔30s发送一次心跳至服务端
		2.发送心跳最长时间间隔是90s
		3.双重缓存
			- 客户端会将注册列表缓存至本地,提高效率。
				- 只读缓存(每隔30s从读写缓存更新一次)
				- 读写缓存(过期时间是180s)
		4.注册延时40s,其他组件也有缓存
	服务端:
		1.每隔60s运行一次定时任务,检查客户端是否存活,检查标准是由客户端自己规定(90s),如果不存活那么将客户端从注册列表中移除----》失效剔除
		2.服务下线:客户端下线时会发送请求至服务端,服务端将客户端从注册列表中移除。
		3.自我保护:实际心跳次数/应该心跳次数<=85% 那么触发自我保护机制,触发后禁止删除注册列表中的服务,那么保证了大部分服务的可用。
		
Eureka集群搭建
	1.主配置文件必须注释
	2.多配置文件中一定要将相互注册以及拉取服务列表开启(默认开启状态,只不过我们在主配置文件中设置为false)
	3.注册中心地址编写 8761端口---》 http://eureka2:8762/eureka
Ribbon
	负载均衡
		- nginx 集中式负载均衡:独立进程单元,通过负载均衡策略,将请求转发到不同的单元
		- ribbon 客户端负载均衡:将负载均衡逻辑以代码的形式封装到服务消费者的客户端上,服务消费者客户端维护了一份服务提供者的信息列表,通过负载均衡策略将请求分摊给多个服务提供者
		使用
			- 开启负载均衡 @LoadBalanced
			- 底层,负载均衡请求处理,LoadBalancerClient的实现类RibbonLoadBalancerClient
		组件
			- ServerList:可以响应客户端的特定服务的服务器列表。
			- ServerListFilter:可以动态获得的具有所需特征的候选服务器列表的过滤器。
			- ServerListUpdater:用于执行动态服务器列表更新。
			- Rule:负载均衡策略,用于确定从服务器列表返回哪个服务器。
			- Ping:客户端用于快速检查服务器当时是否处于活动状态。
			- LoadBalancer:负载均衡器,负责负载均衡调度的管理。 
		内部执行 
			- LoadBalancerClient具体交给了ILoadBalancer来处理,通过配置IRule、IPing等,向EurekaClient获取注册列表,默认每10秒向EurekaClient发送一次ping,进而检查是否需要更新注册列表信息,根据IRule的策略进行负载均衡
			- RestTemplate加上@LoadBalance注解后,在远程调度时能够负载均衡,主要是维护了被@LoadBalance注解的RestTemplate列表,并给该列表中的RestTemplate对象添加了拦截器,在拦截器的方法中,将远程调度方法交给了Ribbon的负载均衡器LoadBalancerClient去处理
Feign
	远程调用
		- feign不处理请求,通过注解生成Request模板,发送请求之前,feign通过处理注解的方式替换掉Request模板参数,然后交给javaHTTP客户端处理
		- 默认使用HttpURLConnnection,还可以使用HttpClient和OkhHttp
	源码实现过程
		- @EnableFeignClient开启FeignClient功能,启用对@FeignClient扫描
		- 远程调用接口加上FeignClient
		- 接口方法被调用时,通过JDK的代理来生成具体的RequestTemplate模板对象
		- 根据RequestTemplate对象生成http请求Request对象
		- Request对象交给Client(网络请求框架)去处理
		- Client封装在LoadBalanceClient,这个类结合Ribbon做到了负载均衡
Hystrix )_(->嗨斯拽个斯
	熔断器
		- 作用:阻止分布式系统出现联动故障,并提供了故障的解决方案,提高分布式系统的弹性,(防止雪崩效应)
		- hystrix解决了什么问题:分布式中,服务之间依赖复杂,服务故障导致依赖该服务的其他远程调用线程阻塞(无限等待),导致其他服务线程资源耗尽,最后导致分布式系统不可用(崩溃),【雪崩效应】答:作用
	设计原则
		- 防止单个服务故障耗尽整个服务的Servlet容器(Tomcat)的线程资源
		- 快速失败机制
		- 提供回退方案
		- 熔断机制
		- 提供监控组件,实时监控熔断器的状态
	工作机制
		- 在一定时间内服务接口失败次数小于设定的阈值,熔断器关闭
		- 在一定时间内服务接口失败次数大于设定的阈值,熔断器开启,执行快速失败(回退),不执行业务,不会阻塞,处于打开状态
		- 【自我修复】,处于打开状态的熔断器,一段时间后会处于半打开的状态,将一定数量的请求正常执行,剩余请求会执行快速失败,若执行正常逻辑的请求失败,熔断继续打开,若执行正常请求成功,熔断器关闭
Gateway
	Gateway不仅提供统一路由方式,并且基于Filter链的方式提供网关的基本功能。例如:安全,监控/指标,和限流。
网关的核心功能:过滤(权限)、路由

	核心概念:
	- 路由(route):
	- 断言Predicate函数:路由转发规则
	- 过滤器(Filter):