专栏首页mySoulSpring Cloud 简介
原创

Spring Cloud 简介

Spring Cloud 简介

思维导图如下

总说

这里将会首先简单介绍一下Spring Cloud 。

其Logo 如下

Spring Cloud 是一系列有序框架的集合,其主要的设施有,服务发现与注册,配置中心,消息总线,负载均衡,断路器,数据监控等,通过Spring Boot的方式,可以实现一键启动,和部署。

Spring 没有重新造车轮,只是把各家的应用给综合起来。最后给开发者遗留下了一个足够简单的,相当容易部署的,相当容易学习的Spring 体系。

至于为什么要学习Spring Cloud的体系,因为原先的体系过于复杂了,导致开发的环境艰难,正是由于开发的环境的艰难,Spring Cloud 的是Spring体系的简化版,简化了原有的复杂,使得开发变的更加的简单快速。

其核心如下:

Spring Cloud Config、Spring Cloud Netflix(Eureka、Hystrix、Zuul、Archaius…)、Spring Cloud Bus、Spring Cloud for Cloud Foundry、Spring Cloud Cluster、Spring Cloud Consul、Spring Cloud Security、Spring Cloud Sleuth、Spring Cloud Data Flow、Spring Cloud Stream、Spring Cloud Task、Spring Cloud Zookeeper、Spring Cloud Connectors、Spring Cloud Starters、Spring Cloud CLI

这里将会一一的介绍。

服务注册与发现

其英文名称为 Spring Cloud Eureka,为Spring Cloud Netflix 子项目的核心组件之一,主要用于微服务的服务治理与发现。

在微服务的架构中,往往都有一个注册中心,每个微服务都会向注册中心,注册自己的微服务,注册中心,维护着,服务名称与服务实例对应的关系,每个微服务都会定时的从注册中心,获取注册列表,同时汇报自己的运行情况,这样当有其他服务需要调用该服务的时候,就可以向自己获取到的列表中,获取地址进行调用,Eureka实现了这套机制。即服务注册与发现。

其为微服务架构体系中最为核心的一点,用于其他微服务注册到该注册中心,配合路由可以实现路由的转发。通过寻找,遍历出其微服务。

同类型产品的还有Apahe Zookeeper 相对于高可用来说,zk 将不会保证,服务的可用性,当节点挂掉以后,需要进行Leader 选举,选举的时候会出现短暂的挂掉。而 eureka 当一个节点宕机以后,会进行自动的转移。所以其高可用性比zookeeper 相比更高。

配置中心

伴随着配置的增长,服务也有很多个配置,每个配置文件都各个不相同,其中,许多配置文件都是可以共用的,如果每个服务都去管理这些配置,会带来极大的麻烦,这个时候,需要引入基于Git的配置中心,去配置这个服务,例如Spring Cloud 体系中的,Spring Cloud Config,但是服务之间如何通信,这里使用 Spring Cloud Bus,即消息总线,作为配置中心,通知到配置体系中。

服务消费者

这里是相当经典的生产者,消费者模型,通过生产者,和消费者,统一进行布置,通过Spring Cloud Feign 远程调用,实现服务消费者,和生产者之间的相关联。实现经典的服务消费者和生产者之间的关系。

服务容错

当调用服务出错以后,服务如何保证整个体系不崩塌,这里就需要使用服务容错进行处理。这里称为服务雪崩,当出现服务雪崩的时候,整个服务链路会出现调用崩塌的情况。

Spring Cloud 组件中的 Spring Cloud HyStrix 实现了这种服务降级,与故障隔离。

网关

网关为整个系统,提供路由,鉴权,监控,负载均衡等功能,Spring Cloud 为此提供的解决方案有Zuul,与Gateway。

服务追踪

伴随着整个服务链路的增长,服务越来越多,排查问题,监控指标的时候,服务追踪变的相当的重要,Spring Cloud 体系提供的是,Sleuth,对整个服务链路进行追踪,并以图表的形式表现出来。

服务测试

在微服务体系中,一个服务可能会依赖其他的服务,这里使用服务测试来使用。通过Mock数据,实现服务的测试。

这里使用的是 Spring Cloud Contract

更多工具

Spring Cloud Security

Spring Cloud Security 的安全工具包,用于对Spring Security 提供基本的RBAC服务。

Spring Cloud Sleuth

用于进行相关的日志收集,实现分布式追踪的一种解决方案。

Spring Cloud Data Flow

用于进行大规模的数据处理。

Spring Cloud Stream

事件触发的机制,让其实现事件触发。

Spring Cloud Task

调度工作,定时任务,需要使用 Task

Spring Cloud Zookeeper

同属于 注册中心 Zookeeper 体系。

Spring Cloud Connectors

利用 Spring Cloud Connectors 实现云平台的搭建。

Spring Cloud Starters

开箱即用,可以实现Boot形式的启动项目。

Spring Cloud CLI

同上,使用命令行的方式实现开箱即用。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Spring Cloud 简介

    Spring Cloud 是一系列有序框架的集合,其主要的设施有,服务发现与注册,配置中心,消息总线,负载均衡,断路器,数据监控等,通过Spring Boot的...

    mySoul
  • 简易 MVC框架 弃坑

    ![](https://melovemingming-1253878077.cos.ap-chengdu.myqcloud.com/blog-image/201...

    mySoul
  • SpringBoot 实现Session共享

    HttpSession,是通过Servlet容器创建并进行管理的,创建成功以后将会保存在内存中,这里将会使用Redis解决session共享的问题。

    mySoul
  • Spring Cloud全家桶主要组件及简要介绍

    个人博客:https://suveng.github.io/blog/​​​​​​​

    suveng
  • 微服务架构springcloud

    服务化的核心就是将传统的一站式应用根据业务拆分成一个一个的服务,而微服务在这个基础上要更彻底地去耦合,并且强调DevOps和快速演化。

    一笠风雨任生平
  • 一文读懂Spring Cloud微服务全家桶

    昨天跟女朋友聊了聊富婆,她有个朋友被一年轻漂亮有钱单身的富婆看上了,然后富婆,送车送表送衣服打着出差的幌子带旅游,还每个月发不知道多少k的工资,昨天问问是想听到...

    程序员小强
  • 从 Spring Cloud 看一个微服务框架的「五脏六腑」

    Spring Cloud Netflix Eureka 源码解析 —— 项目结构简介

    用户4143945
  • SpringCloud组件和概念介绍

    Spring Cloud作为一套微服务治理的框架,几乎考虑到了微服务治理的方方面面,之前也写过一些关于Spring Cloud文章,主要偏重各组件的使用,本次分...

    技术从心
  • 什么是微服务

    海仔
  • 从架构演进的角度聊聊Spring Cloud都做了些什么?传统架构发展史 SOA和微服务架构总结

    单体架构在小微企业比较常见,典型代表就是一个应用、一个数据库、一个web容器就可以跑起来,比如我们开发的开源软件云收藏,就是标准的单体架构。

    美的让人心动

扫码关注云+社区

领取腾讯云代金券