微服务架构学习(四):Spring Cloud

前言

前面学习了解了微服务架构的常见选型,本次就深入的学习了解Spring Cloud这种选型,考虑是否适用于我目前参与的项目选择

概念

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
从度娘看来的介绍,描述的已经大概的说明了,Spring Cloud是一系列的框架集合起来,Spring Cloud的子项目,大致可分成两类,一类是对现有成熟框架”Spring Boot化”的封装和抽象,也是数量最多的项目;第二类是开发了一部分分布式系统的基础设施的实现,如Spring Cloud Stream扮演的就是kafka, ActiveMQ这样的角色。我们细看一下第一类子项目中的核心项目。

Spring Cloud完整技术

Spring Cloud完整技术图-来源于网络

核心子项目

  1. Spring Cloud Netflix:核心组件,可以对多个Netflix OSS开源套件进行整合,包括以下几个组件:
    Eureka:服务治理组件,包含服务注册与发现
    Hystrix:容错管理组件,实现了熔断器
    Ribbon:客户端负载均衡的服务调用组件
    Feign:基于Ribbon和Hystrix的声明式服务调用组件
    Zuul:网关组件,提供智能路由、访问过滤等功能
    Archaius:外部化配置组件
  2. Spring Cloud Config:配置管理工具,实现应用配置的外部化存储,支持客户端配置信息刷新、加密/解密配置内容等。
  3. Spring Cloud Bus:事件、消息总线,用于传播集群中的状态变化或事件,以及触发后续的处理
  4. Spring Cloud Security:基于spring security的安全工具包,为我们的应用程序添加安全控制
  5. Spring Cloud Consul :
    封装了Consul操作,Consul是一个服务发现与配置工具(与Eureka作用类似),与Docker容器可以无缝集成

Spring Cloud组件架构流程

Spring Cloud组件架构流程流程

  1. 请求统一通过 API 网关(Zuul)来访问内部服务。
  2. 网关接收到请求后,从注册中心(Eureka)获取可用服务。
  3. 由 Ribbon 进行均衡负载后,分发到后端具体实例。
  4. 微服务之间通过 Feign 进行通信处理业务。
  5. Hystrix 负责处理服务超时熔断。
  6. Turbine 监控服务间的调用和熔断相关指标。

经过以上内容的了解,对Spring Cloud这一系列架构有了基础的认知与了解,还需深入的进行学习。

总结

针对Spring Cloud架构选型的学习,整体上感觉很匆忙,导致学习到的知识也仅仅停留在表面,没有深入进入,后面我会继续挑时间,进行进一步的学习,争取能够有所收获,有所感悟。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值