近期入坑微服务项目,对微服务项目初涉知识,后续将持续添加相关知识架构。
微服务解决了什么问题:从一个单体项目比较集中的功能中纵向拆分出很多功能相对单一独立运行的功能,每个功能通过相应的技术进行管理,达到相互调用、负载均衡的特点。从而解决了集中功能开发的任务分配、对接困难等问题,每人开发相应服务互不干涉,结构清晰。
微服务热门技术:springcloud、dubbo…因只接触过springcloud,暂记录下对springcloud相关了解
一、springcloud的相关组件:
1、Eureka:服务治理、注册和发现,负责服务的抓取监听
底层会将抓取到的服务封装到一个嵌套Map中–后续补充
2、Feigen:跟ribbon是同一个客户端,封装了ribbon,基于动态代理,根据注解和选择的机器,拼接URL地址发起请求
3、Ribbon:用于客户端负载均衡调用,从一个服务的多台机器中选择微服务
4、Hystrix:熔断器,提供线程池,不同的服务走不同的线程,实现不同服务调用的隔离,避免服务雪崩
5、Zuul:网关,微服务唯一的对外接口,转发请求到对应的服务
二、相关注解:
@EnableEurekaServer–>代表注册中心服务端
@LoadBalanced–>负载均衡啦,返回的是RestTemplat对象
@EnableEurekaClient–>代表一个微服务客户端,可注册到注册中心
@EnableZuulProxy–>开启网关
微服务springcloud初涉
最新推荐文章于 2024-05-15 09:52:54 发布