zoukankan      html  css  js  c++  java
  • Spring Cloud 介绍

    什么是 Spring Cloud

    Spring Cloud 是一系列框架的集合,Spring Cloud 内部包含了许多框架,这些框架互相协作,共同来构建分布式系统。利用这些组件,可以非常方便的构建一个分布式系统。

    Spring Cloud 与微服务的关系

    Spring Cloud 可以理解为微服务这种思想在 Java 领域的一个具体落地。Spring Cloud 在发展之初,就借鉴了微服务的思想,同时结合 Spring Boot,Spring Cloud 提供了组件的一键式启动和部署的能力,极大的简化了微服务架构的落地。

    Spring Cloud 这种框架,从设计之初,就充分考虑了分布式架构演化所需要的功能,例如服务注册、配置中心、消息总线以及负载均衡等。这些功能都是以可插拔的形式提供出来的,这样,在分布式系统不断演化的过程中,我们的 Spring Cloud 也可以非常方便的进化。

    Spring Cloud 的特征

    Spring Cloud专注于为典型的用例和扩展机制(包括其他用例)提供良好的开箱即用体验。

    • 分布式/版本化配置

    • 服务注册和发现

    • 路由

    • 服务之间的调用

    • 负载均衡

    • 断路器

    • 全局锁

    • 领导选举和集群状态

    • 分布式消息传递

    Spring Cloud 版本命名

    不同于其他的框架,Spring Cloud 版本名称是通过 A(Angel)、B(Brixton)、C(Camden)、D(Dalston)、E(Edgware)、F(Finchley)。。 这样来明明的,这些名字使用了伦敦地铁站的名字,目前最新版是 H (Hoxton)版。

    Spring Cloud 包含的组件

    下面的常用:

    • Spring Cloud Netflix,这个组件,在 Spring Cloud 成立之初,立下了汗马功劳。

    • Spring Cloud Config,分布式配置中心,利用 Git/Svn 来集中管理项目的配置文件。

    • Spring Cloud Bus,消息总线,可以构建消息驱动的微服务,也可以用来做一些状态管理等。

    • Spring Cloud Consul,服务注册发现

    • Spring Cloud Stream,基于 Redis、RabbitMQ、Kafka 实现的消息微服务

    • Spring Cloud OpenFeign,提供 OpenFeign 集成到 Spring Boot 应用中的方式,主要解决微服务之间的调用问题。

    • Spring Cloud Gateway,Spring Cloud 官方推出的网关服务。


    下面的不常用:

    • Spring Cloud Cloudfoundry,利用 Cloudfoundry 集成我们的应用程序。

    • Spring Cloud Security,在 Zuul 代理中,为 OAuth2 客户端认证提供支持。

    • Spring Cloud AWS ,快速集成亚马逊云服务。

    • Spring Cloud Contract,一个消费者驱动的、面向 Java 的契约框架。

    • Spring Cloud Zookeeper,基于 Apache Zookeeper 的服务注册和发现。

    • Spring Cloud Data Flow,在一个结构化的平台上,组成数据微服务。

    • Spring Cloud Kubernetes,Spring Cloud 提供的针对 Kubernetes 的支持

    • Spring Cloud Function

    • Spring Cloud Task,短生命周期的微服务。

    Spring Cloud 和 Spring Boot 版本关系

    Spring Cloud Spring Boot
    Hoxton 2.2.x
    Greenwich 2.1.x
    Finchley 2.0.x
    Edgware 1.5.x
    Dalston 1.5.x

    Spring Cloud 和 Spring Boot 的关系

    1、在 IOC 和 AOP 的基础上,构造出来的 Spring 框架,然后在 Spring 的基础上,构造出来 Spring Boot ,最后在 Spring Boot 的基础上,使用 Spring Cloud 。

    2、Spring Boot 只是专注于快速开发单个的微服务,而 Spring Cloud 关注的是全局的微服务和协调整体服务之间的治理。

    3、Spring Cloud 从更大的层面上去协调各个不同的 Spring Boot 之间的一个工作的关系,这是 Spring Cloud 做的一个事情。

    4、Spring Boot 本身可以离开 Spring Cloud 独立开发项目,但是 Spring Cloud 是无法离开 Spring Boot 的。

  • 相关阅读:
    Java开发必备工具 ------------工欲善其事,必先利其器(补充+1)
    我的第一篇博客
    GPD mircoPC linux系统安装
    如何简单的编译v8动态库
    如何让FasterTransformer支持动态batch和动态sequence length
    合并多个tensorflow模型的办法
    IDEA优化配置
    Easyui中select下拉框(多选)的取值和赋值
    Windows下搭建Nacos及Seata
    SpringBoot打包成jar运行脚本
  • 原文地址:https://www.cnblogs.com/youcoding/p/13237045.html
Copyright © 2011-2022 走看看