Spring Cloud全解析:入门指南与概览,轻松掌握微服务架构的基石

springcloud简介

微服务?

微服务是一种架构风格,将单体应用划分为小型的服务单元,微服务之间使用HTTP的API进行资源访问和操作,与SOA不同的是,SOA架构侧重于将每个单体应用的服务集成到ESB(消息总线)上,而微服务强调将整个模块变成服务组件,对模块的划分粒度更细致

SpringCloud

springcloud是基于springboot提供的一整套微服务解决方案,包括服务注册与发现,配置中心,链路监控,服务网关,负载均衡,熔断器等组件,是各个微服务架构落地技术的集合体

官方文档 cloud.spring.io/spring-clou...

主要模块

  • Eureka:基于REST服务的注册中心,用于服务管理
  • Hystrix:容错框架,通过添加延迟阈值以及容错的逻辑,控制分布式系统间组件的交互
  • Feign:一个Rest客户端,用于简化服务间调用的开发
  • Ribbon:负载均衡框架,实现了中间层应用程序的负载均衡
  • Zuul:微服务网关,为微服务集群提供代理、过滤、路由功能
  • Spring cloud config:为分布式系统提供了配置服务,可以很好的管理集群中的配置文件
  • Spring cloud Sleuth:服务跟踪框架,可以与Zipkin、Apache Htrace和ELK等数据分析、服务跟踪系统进行整合,为服务跟踪提供了便利
  • Spring Cloud Stream:用于构建消息驱动微服务的框架,整合了Spring Integration来连接消息中间件
  • Spring Cloud Bus:连接RabbitMQ或kafka等消息中间件的消息总线

与springboot版本对应

Release Train Boot Version
2020.0.x aka Ilford 2.4.x, 2.5.x (Starting with 2020.0.3)
Hoxton 2.2.x, 2.3.x (Starting with SR5)
Greenwich 2.1.x
Finchley 2.0.x
Edgware 1.5.x
Dalston 1.5.x

如果SpringBoot版本由1.x升级为2.x会存在一些组件的调整,由于部分组件已经停更了,所以可能会出现组件的替换

  • 注册中心 之前Eureka停更,注册中心转移到zookeeper、consul、Nacos(主流)
  • 负载均衡 目前还是使用的Ribbon,虽然该项目目前在维护,但是还没有很好的替代品出现
  • 服务调用 由之前的Feign转为OpenFeign
  • 服务熔断和降级 Hystrix也停更了,开始使用sentinel
  • 服务网关 之前的Zuul也不在更新,改为springcloud官方的gateway
  • 服务配置 springCloudConfig也逐渐被取代,由Nacos替代,不过也有部分使用Apollo
  • 服务总线 之前的springCloudBus也逐渐的被Nacos代替

zhhll.icu/2021/框架/微服务...

相关推荐
天天扭码13 小时前
五天SpringCloud计划——DAY1之mybatis-plus的使用
java·spring cloud·mybatis
luckywuxn19 小时前
Spring Cloud Alibaba、Spring Cloud 与 Spring Boot各版本的对应关系
spring boot·spring·spring cloud
wclass-zhengge2 天前
SpringCloud篇(服务网关 - GateWay)
spring boot·spring cloud·gateway
荆州克莱2 天前
Redis | Redis常用命令及示例总结(API)
spring boot·spring·spring cloud·css3·技术
RainbowSea2 天前
5. Spring Cloud OpenFeign 声明式 WebService 客户端的超详细使用
java·spring·spring cloud
听潮阁2 天前
【SpringCloud详细教程】-02-微服务环境搭建
spring·spring cloud·微服务
阿维的博客日记2 天前
java八股-SpringCloud微服务-Eureka理论
spring cloud·eureka·nacos
跳跳的向阳花2 天前
03-02、SpringCloud第二章,Eureka服务的注册与发现
spring·spring cloud·eureka
泰山小张只吃荷园2 天前
快速入门消息队列MQ、RabbitMQ
java·spring boot·分布式·spring·spring cloud·rabbitmq·java-rabbitmq
customer082 天前
【开源免费】基于SpringBoot+Vue.JS网上订餐系统(JAVA毕业设计)
java·jvm·vue.js·spring boot·spring cloud·java-ee·开源