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. 历史上的今天接口api

    ip地址查询 www.ipip5.com 为大家提供历史上的今天接口api,提供txt和json两种返回格式.   1.txt文本格式 http://www.ipip5.com/today/api.p ...

  2. 如何下载Vimeo视频

    MediaHuman YouTube Downloader是应用在Mac上的一款非常优秀的YouTube视频下载工具,YouTube Downloader破解版将帮助你快速完成视频下载,而不会挂断.您 ...

  3. java存储数据到本地txt文件中

    java存储数据,方便打印日志等 1.会覆盖以前的数据 try { File writeName = new File("D:\\data.txt"); // 相对路径,如果没有则 ...

  4. ios学习之路:Xcode+swift+打包ipa一步一坑记录

    咳咳,作为公司的Android开发(兼java接口开发,兼软件测试,兼运维……)由于公司ios开发小伙伴离我而去,ios的app出了问题,急需处理.于是领导决定由我来处理一下.就是用证书重新打包的事儿 ...

  5. Java面向对象之构造器

    目录 Java面向对象之构造器 利用构造器确保初始化 构造器重载 Java面向对象之构造器 利用构造器确保初始化 初始化问题是关系编程方式是否安全的一个重要的问题. 功能:在创建对象时执行初始化. 在 ...

  6. 通过requestAnimationFrame判断浏览器帧率

    /** ** 得到浏览器每秒帧数fps ** ** @Date Mar 13 2013 **/ var showFPS = (function(){ var requestAnimationFrame ...

  7. python中错误、调试、单元测试、文档测试

    错误分为程序的错误和由用户错误的输入引起的错误,此外还有因为各种各样意外的情况导致的错误,比如在磁盘满的时候写入.从网络爬取东西的时候,网络断了.这类错误称为异常 错误处理 普通的错误处理机制就是在出 ...

  8. Mysql悲观锁乐观锁区别与使用场景

    本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取.传送门:h ...

  9. JavaWeb学习——web.xml文件说明

    JavaWeb学习——web.xml文件说明 摘要:本文主要学习了web.xml文件的作用以及如果配置. 是什么 web.xml文件是用来在JavaWeb项目里面初始化配置信息的,比如:访问的首页.S ...

  10. elasticsearch对无意义的词进行屏蔽——停用词

    介绍 在使用elasticsearch进行搜索业务的时候,发现一篇和搜索关键字完全不匹配的文章排在最前面.打开它发现原来是这篇文章含有非常多的"的"这个无意义的词.而我的搜索关键字 ...