概述
-
Eureka服务中心:
-
Eureka:就是服务注册中心(可以是一个集群),对外暴露自己的地址
-
提供者:启动后向 Eureka 注册自己信息(地址,提供什么服务)
-
消费者:向 Eureka 订阅服务,Eureka 会将对应服务的所有提供者地址列表发送给消费者, 并且定期更新
-
心跳(续约):提供者定期通过 http 方式向 Eureka 刷新自己的状态
-
-
简述什么是 CAP,并说明 Eureka 包含 CAP 中的哪些?
-
CAP理论:一个分布式系统不可能同时满足C (一致性),A(可用性),P(分区容错性).由于分区 容错性 P 在分布式系统中是必须要保证的,因此我们只能从 A 和 C 中进行权衡.
-
Eureka 遵守 AP
-
Eureka 各个节点都是平等的,几个节点挂掉不会影响正常节点的工作
-
Eureka 的客户端在向某个 Eureka 注册或查询是如果发现连接失败,则会自动切换至其他 节点
-
只要有一台 Eureka 还在,就能保证注册服务可用(保证可用性),只不过查的信息可能不最新的
-
-
-
客户端启动时如何注册到服务端?
-
Eureka客户端在启动时,首先会创建一个心跳的定时任务,定时向服务端发送心跳信息,服务端会对客户端心跳做出响应,如果响应状态码为404时,表示服务端没有该客户端的服务信息,那么客户端则会向服务端发送注册请求,注册信息包括服务名、ip、端口、唯一实例ID等信息。
-
-
服务端如何保存客户端服务信息?
-
客户端信息放在一个ConcurrentHashMap对象中
-
-
客户端如何拉取服务端已保存的服务信息(是需要使用的时候再去拉取,还是先拉取保存本地,使用的时候直接从本地获取)?
-
客户端拉取服务端服务信息是通过一个定时任务定时拉取的,每次拉取后刷新本地已保存的信息,需要使用时直接从本地直接获取。
-
-
如何构建高可用的Eureka集群?
-
在注册中心的配置文件中配置其他注册中心的地址
-
-
什么是服务续约
-
在注册服务完成以后,服务提供者会维持一个心跳(每30s定时向EurekaServer 分发起请求)告诉EurekaServer "我还活着"
-
-
什么是失效剔除
-
有时候,我们的服务提供方并不一定是正常下线,可能是内存溢出,网络故障等原因导致服务无法正常工作.EurekaServer会将这些失效的服务剔除服务列表.因此它会开启一个定时任务.每隔60秒会对失效的服务进行一次剔除
-
最后
以上就是能干煎饼为你收集整理的Eureka的全部内容,希望文章能够帮你解决Eureka所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复