SpringCloud源码解析开篇

SpringCloud源码解析文章目录

1、序言

第一次在博客上分享,如有不正之处,请多多指教,写此文的目的只是单纯记录并分享对于SpringCloud的个人理解的源码分析,其中也参考了其他博主的文章和相关书箱,希望能对正在学习研究SpringCloud的你有所帮助,本文中涉及到的源码基于SpringCloud的Hoxton版本。

2、预备知识


1、InstanceInfo类

封装将被发送到eureka Server 进行服务注册的服务实例元数据。它在eureka Server 的注册表中代表一个服务实例,其他服务实例可以通过 InstanceInfo了解该服务实例的相关信息从而发起服务请求

 2、Application

在这个Application中维护一个列表,Set<InstanceInfo> instances;

Application中维护着某一个微服务名称下面所有的提供者信息的列表

3、Applications

Applications就是Eureka Client中存放的【客户端注册表】。

注意这里说的是客户端注册表,而非服务端注册表(服务端注册表是一个Map<微服务名称,Application>)

4、Jersey

eureka是利用jersey提供接口给客户端访问注册服务和获取服务列表的,jerseyApplication将注册DefaultResourceConfig的bean交由spring容器,这里扫描获取所有@Path注解的类

(在这里的jersey的注解相当springmvc的@RequestMapping)

放入DefaultResourceConfig交由spring容器即可

3、总结

3.1、Eureka 也存在缺陷由于集群间的同步复制是通过 HTTP 的方式进行,基于网络的不可靠性,集群中的 Eureka Server 间的注册表信息难免存在不同步的时间节点,不满足CAP(,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)) 中的C(数据一致性);

3.2、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值