跟我学SpringCloud | 第一篇:介绍

SpringCloud系列教程 | 第一篇:介绍

首先讲一下我为何要写这一系列的文章,如今网上大量的springcloud相关的文章,使用的springboot和springcloud的版本都相对比较老,不少仍是在使用springboot1.x的版本,若是尝鲜想使用springboot2.x的版本,不少配置都和以前的不同,有了大量的修改,不少刚开始学习的朋友可能试一试搭不起来就放弃了,本系列教程就是帮助刚接触springcloud的朋友简单上手,快速起步。html

springboot进入2.x之后,历经一年多的修修改改,终于到了2.1.x的版本,相对较为稳定,本系列教程将使用目前最新的springboot(2.1.6.RELEASE)和springcloud(Greenwich.SR1)版本(如无特殊说明)。spring

跟我学SpringCloud | 终篇:文章汇总(持续更新)后端

1. 什么是springcloud?

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,均可以用Spring Boot的开发风格作到一键启动和部署。Spring Cloud并无重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,经过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。安全

-- 以上内容摘自百度百科springboot

百度百科的解释看起来文绉绉的,可能刚接触的朋友不少新名词都看不大懂。个人理解就是springcloud为项目微服务化提供了一系列的工具,经常使用的包括注册中心,断路器,配置中心,消息总线等等,简单理解就是springcloud提供了一系列的工具或者框架,固然,还包含不少设计思想。架构

2. 微服务架构选型为何选择springcloud而不会dubbo?

这里仅表明个人我的观点,欢迎交流:)负载均衡

说到这个,就要先聊一下什么是微服务了。框架

微服务(Microservices): 是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每一个微服务仅关注于完成一件任务并很好地完成该任务。在全部状况下,每一个任务表明着一个小的业务能力。分布式

Dubbo: Dubbo是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。简单的说,Dubbo 就是个服务框架,说白了就是个远程服务调用的分布式框架。微服务

springcloud: springcloud是一整套的微服务解决方案,有一张颇有名的对比图能够清晰看到dubbo和springcloud功能对比,以下:

若是微服务架构选型选择了dubbo,那么后续一些其余的组件,还须要咱们本身去评估目前市面上一些开源的组件是否符合咱们的须要,而若是架构选型选择了springcloud,那么就能省心不少,springcloud自己就提供了一整套的微服务的解决方案,虽然有不少组件目前看起来依然不是很成熟,不过这依然大大下降了咱们在架构选型上的工做量。

3. springcloud一些经常使用组件

如下排序不分前后

  • Spring Cloud Config 配置中心: 利用 Git 集中管理程序的配置。
  • Spring Cloud Netflix Eureka: 服务中心(相似于管家的概念,须要什么直接从这里取,就能够了),一个基于 REST 的服务,用于定位服务,以实现云端中间层服务发现和故障转移。
  • Spring Cloud Netflix Hystrix 熔断器: 容错管理工具,旨在经过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。
  • Spring Cloud Netflix Zuul 网关: 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Web 网站后端全部请求的前门。
  • Spring Cloud Netflix Archaius: 配置管理 API,包含一系列配置管理API,提供动态类型化属性、线程安全配置操做、轮询框架、回调机制等功能。
  • Spring Cloud Netflix Ribbon: 负载均衡。
  • Spring Cloud Netflix Fegin: REST客户端。
  • Spring Cloud Bus: 消息总线,利用分布式消息将服务和服务实例链接在一块儿,用于在一个集群中传播状态的变化。
  • Spring Cloud Security: 安全控制。
  • Spring Cloud Sleuth: 分布式链路监控,SpringCloud 应用的分布式追踪系统,和 Zipkin,HTrace,ELK 兼容。
  • Spring Cloud Stream: 消息组件,基于 Redis,Rabbit,Kafka 实现的消息微服务,简单声明模型用以在 Spring Cloud 应用中收发消息。

下面一篇,开始springcloud的搭建。

系列回顾

相关文章
相关标签/搜索