Spring Cloud 简介

Spring Cloud 是一个基于 Spring Boot 实现的微服务架构开发工具,可以快速构建分布式系统中的某些常用模式,如配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式回话和集群状态管理等等。Spring Cloud致力于为典型的用例和扩展机制提供良好的开箱即用体验,以涵盖其他用例。

Spring Cloud 全家桶

1.Spring Cloud Config

配置管理工具,支持使用 git 存储配置内容,可以使用它实现把配置存储在外部的远程服务器上,并支持客户端配置信息刷新、加密/解密配置内容等。方便统一管理、统一升级更新。

2.Spring Cloud Netflix

核心组件,对多个 Netflix OSS 开源套件进行整合。

  • Eureka

    服务治理组件,包含了服务注册中心、服务注册和服务发现机制的实现。

  • Hystrix

    容错管理组件,实现断路器模式,帮助服务依赖中心出现的延迟和故障提供强大的容错能力。

  • Zuul

    网关组件,提供智能路由、访问过滤等功能。它是基于JVM的路由器和服务器端负载均衡。

  • Archaius

    外部化配置组件,是所有Netflix OSS组件用于配置的库。它允许通过轮询源进行更改或将源更改推送到客户端来进行配置更新。

值得注意,官方已经将 Hystrix、Zuul、Archaius 等相关模块置于维护模式,这意味着不再向该模块添加新功能。 https://cloud.spring.io/spring-cloud-static/spring-cloud-netflix/2.2.0.M3/reference/html/#modules-in-maintenance-mode

3.Spring Cloud Bus

事件、消息总线,用于传播集群中的状态变化或事件,以触发后续的处理,比如用来动态刷新配置等。

4.Spring Cloud Cluster

针对 Zookeeper, Redis, Hazelcast, Consul 等常见状态模式的抽象和实现。

5.Spring Cloud Cloudfoundry

通过Oauth2协议绑定服务到CloudFoundry,CloudFoundry是VMware推出的开源PaaS云平台。

Cloud Foundry是业界第一个开源PaaS云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

6.Spring Cloud Consul

封装了Consul操作,consul是一个服务发现与配置工具,与Docker容器可以无缝集成。

Consul是基于GO语言开发的开源工具,主要面向分布式,服务化的系统提供服务注册、服务发现和配置管理的功能。Consul支持服务注册/发现、健康检查、Key/Value存储、多数据中心和分布式一致性保证等特性。

7.Spring Cloud Stream

数据流操作开发包,封装了与Redis,Rabbit、Kafka等发送接收消息。

8.Spring Cloud Security

安全工具包,提供 Zuul 代理中对 OAuth2 客户端请求的中继器。

9.Spring Cloud Sleuth

日志收集工具包,封装了Dapper和log-based追踪以及Zipkin和HTrace操作,为SpringCloud应用实现了一种分布式追踪解决方案。

10.Spring Cloud Data Flow

大数据操作工具,作为Spring XD的替代产品,它是一个混合计算模型,结合了流数据与批量数据的处理方式。

11.Spring Cloud Zookeeper

操作Zookeeper的工具包,用于使用zookeeper方式的服务发现和配置管理。

12.Spring Cloud Task

提供云端计划任务管理、任务调度。

13.Spring Cloud Connectors

便于云端应用程序在各种PaaS平台连接到后端,如:数据库和消息代理服务。

14.Spring Cloud Starters

Spring Boot式的启动项目,为Spring Cloud提供开箱即用的依赖管理。

15.Spring Cloud CLI

基于 Spring Boot CLI,可以让你以命令行方式快速建立云组件。

16.Spring Cloud Gateway

提供了一个用于在Spring MVC之上构建API网关的库,是基于Spring Boot 2.x, Spring WebFlux和Project Reactor 构建的。
Spring Cloud Gateway功能:

  • 建立在Spring Framework 5,Project Reactor和Spring Boot 2.0之上

  • 能够匹配任何请求属性上的路由。

  • 谓词和过滤器特定于路由。

  • Hystrix断路器集成。

  • Spring Cloud DiscoveryClient集成

  • 易于编写的谓词和过滤器

  • 请求速率限制

  • 路径改写

更多......

Spring Cloud 的优势

为什么我们要选择使用 Spring Cloud?

1.全面性, Spring Cloud 提供了微服务架构实施的综合性解决框架,不像其他一些框架只解决微服务中的某一个问题。

2.可靠性,Spring 背景强大,Spring Cloud 整合了诸多被广泛实践和证明过的框架作为实施的基础部件,又在该体系基础上创建了一些非常优秀的边缘组件。

3.便捷性,轻轻松松几行代码就完成了熔断、均衡负载、服务治理等各种平台功能,且开箱即用。

4.活跃性,很多国内外的技术公司都在贡献着他们的智慧,如国内alibaba等。而且 Spring Cloud 作为当今热门,教程也是非常丰富,遇到问题也容易找到解决方案。

5.低成本性,对于很多中小型企业来说,如果自己去构建和维护一套微服务架构,需要考虑的设计和成本并不小,且不一定有这个实力,而 Spring Cloud 的一站式解决方案大大减少了这方面的成本。

文档

spring官网:https://spring.io/projects/spring-cloud

中文网:https://www.springcloud.cc/

非特殊说明,本文版权归 朝雾轻寒 所有,转载请注明出处.

原文标题:Spring Cloud(一):入门篇

原文地址:https://www.zwqh.top/article/info/19

如果文章对您有帮助,请扫码关注下我的公众号,文章持续更新中...

Spring Cloud(一):入门篇的更多相关文章

  1. Spring Cloud Alibaba入门篇

    学习条件 了解web三层架构 熟练应用SSM架构 了解Maven管理工具的使用 熟练使用SpringBoot,以及了解SpringBoot基本原理. 了解部分术语:应用.工具.耦合.负载等 温馨提示: ...

  2. Spring Boot -01- 快速入门篇(图文教程)

    Spring Boot -01- 快速入门篇(图文教程) 今天开始不断整理 Spring Boot 2.0 版本学习笔记,大家可以在博客看到我的笔记,然后大家想看视频课程也可以到[慕课网]手机 app ...

  3. Spring Cloud第十篇 | 分布式配置中心Config

    ​ 本文是Spring Cloud专栏的第十篇文章,了解前九篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Clo ...

  4. Spring Cloud Alibaba入门实战之nacos(一)

    Spring Cloud Alibaba入门实战之nacos(一) 前情介绍 ​ Spring Cloud Alibaba 是阿里巴巴提供的新一代的微服务解决方案,相信会有越来越多采用微服务架构的公司 ...

  5. Spring Cloud 快速入门

     Spring Cloud快速入门 代码地址: https://gitee.com/gloryxu/spring-cloud-test EureKa:服务注册中心 添加依赖 <dependenc ...

  6. Spring Cloud Gateway入门

    1.什么是Spring Cloud GatewaySpring Cloud Gateway是Spring官方基于Spring 5.0,Spring Boot 2.0和Project Reactor等技 ...

  7. Spring实践系列-入门篇(一)

    本文主要介绍了在本地搭建并运行一个Spring应用,演示了Spring依赖注入的特性 1 环境搭建 1.1 Maven依赖 目前只用到依赖注入的功能,故以下三个包已满足使用. <properti ...

  8. Spring Cloud第四篇 | 客户端负载均衡Ribbon

    ​ 本文是Spring Cloud专栏的第四篇文章,了解前三篇文章内容有助于更好的理解本文: ​Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Cl ...

  9. Spring Cloud第五篇 | 服务熔断Hystrix

    ​ 本文是Spring Cloud专栏的第五篇文章,了解前四篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Clo ...

  10. Spring Cloud第六篇 | Hystrix仪表盘监控Hystrix Dashboard

    本文是Spring Cloud专栏的第六篇文章,了解前五篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Cloud ...

随机推荐

  1. Python是什么?你真的了解Python吗?

    一.Python是什么相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是一种开发语言,而且已经进阶到 ...

  2. YiluPHP是如何做到不用配置、不用注入就能直接使用所有的类?

    使用过YiluPHP的人都会发现,不管是模型类还是逻辑类.辅助类还是工具类,使用所有类都不需要在配置文件中设置加载或注入,也不需要在页面中使用 include 或 require 或 use ,直接使 ...

  3. RAC修改字符集

    字符集修改做过几次了,这次感觉还是有点不顺,走了弯路,再记一遍[概况]准备搭建RAC+RAC DG,发现两端字符集不大一致,担心到时出问题. [目标]将备库NLS_NCHAR_CHARACTERSET ...

  4. STM32基本GPIO操作:按键输入(扫描+外部中断)

    (涉及专有名词较多,难免解释不到位,若有错误还请指出,谢谢!) 硬件连接图如下: 一.扫描 思路是在main函数中通过死循环来扫描端口电平状态检测,以此判断按键是否按下.实现较为简单. 1.初始化(注 ...

  5. DDD 实战记录——实现「借鉴学习计划」

    「借鉴学习计划」的核心是:复制一份别人的学习计划到自己的计划中,并同步推送学习任务给自己,并且每个操作都要发送通知给对方. 它们的类图如下: 它们的关系是一对多: // Schedule entity ...

  6. 【linux命令】软连接和硬链接的区别(ln命令)

    Linux 文件系统把硬盘分为三个部分:超级块.inode 列表.数据区 inode 指示:该文件的数据存放在数据区的哪些块内.因为这个“映射”关系不能变更,因此,inode 相当于代表着文件本身.( ...

  7. WebMvcConfigurationSupport 避坑指南

    通过返回WebMvcConfigurationSupport 的方式, 默认会覆盖 Spring boot的自动配置, 导致配置失效静态资源无法访问:但是在WebMvcConfigurationadp ...

  8. Prometheus学习系列(九)之Prometheus 联盟、迁移

    前言 本文来自Prometheus官网手册 和 Prometheus简介 FEDERATION 允许Prometheus服务器从另一台Prometheus服务器抓取选定的时间序列. 一,用例 联盟有不 ...

  9. C#中类的实例化过程

    创建某个类型的第一个实例时,所进行的操作顺序为:1.静态变量设置为02.执行静态变量初始化器3.执行基类的静态构造函数4.执行静态构造函数5.实例变量设置为06.执行衯变量初始化器7.执行基类中合适的 ...

  10. Analyze Data 分析数据

    In this lesson, you will learn how to add the Analysis functionality to your application. For this p ...