Spring Cloud 是什么

从字面理解,Spring Cloud 就是致力于分布式系统、云服务的框架。

Spring Cloud 是整个 Spring 家族中新的成员,是最近云服务火爆的必然产物。

Spring Cloud 为开发人员提供了快速构建分布式系统中一些常见模式的工具,例如:

  • 配置管理
  • 服务注册与发现
  • 断路器
  • 智能路由
  • 服务间调用
  • 负载均衡
  • 微代理
  • 控制总线
  • 一次性令牌
  • 全局锁
  • 领导选举
  • 分布式会话
  • 集群状态
  • 分布式消息
  • ......

使用 Spring Cloud 开发人员可以开箱即用的实现这些模式的服务和应用程序。这些服务可以任何环境下运行,包括分布式环境,也包括开发人员自己的笔记本电脑以及各种托管平台。

Spring Cloud 与 Spring Boot

Spring Cloud 基于 Spring Boot 来进行构建服务。这样,开发Spring Cloud 组件时,就能依托 Spring Boot 来实现快速开发。

有关 Spring Boot 内容,可见笔者的视频课程《基于Spring Boot的博客系统实战》(https://waylau.com/spring-boot-blog-video-release/)。

Spring Cloud 与微服务

Spring Cloud 是构建分布式系统的利器,而微服务是当下最火热的分布式系统的类型之一,所以,Spring Cloud 天然是支持微服务的构建的。

在早些年,国内互联网公司盛行采用 Dubbo 来架构微服务。如今,有了更好的选择,那就是 Spring Cloud。有数据显示,Spring Cloud不管是在国内,还是国外,用户数都呈现出爆发式增长。而且,Dubbo 主要只是为了解决服务通信、服务注册等问题,而 Spring Cloud 却是提供微服务架构的完整的解决方案。

那么什么是微服务?

所谓微服务,就是:

微服务架构风格就像是把小的服务开发成单一应用的形式, 运行在其自己的进程中,并采用轻量级的机制进行通信(一般是 HTTP 资源 API)。这些服务都是围绕业务能力来构建,通过全自动部署工具来实现独立部署。这些服务,其可以使用不同的编程语言和不同的数据存储技术,并保持最小化集中管理。

更多有关微服务的理论,可见笔者的博客:https://waylau.com/ahout-microservices/ 。

Spring Cloud 如何实现微服务

说了那么多理论,那么微服务架构如何真实的落地呢?课程 《基于Spring Cloud的微服务实战》(https://waylau.com/spring-cloud-video-release/)给出了真实的答案。

在《基于Spring Cloud的微服务实战》课程中,作者基于Spring Boot + Spring Cloud 技术栈来实现了一个完整的天气预报系统。在课程中,先从 Spring Boot 入手,从0到1 快速搭建了具备高并发能力、界面友好的天气预报系统。而后剖析单块架构的利弊,从而引入微服务架构的概念,并实从1到0实现微服务的拆分。最后引入Spring Cloud 技术来实现对这些微服务的治理,重点讲解了服务注册与发现、服务交互、服务消费、负载均衡、API网关、配置中心、服务熔断、自动扩展等方面的话题。

通过学习该课程,学员不但可以学会 Spring Boot 及 Spring Cloud 最新的周边技术栈(本课程基于最新的 Spring Boot 2.0.0.M4 以及 Spring Cloud Finchley.M2),掌握如何运用上述技术进行整合,搭建框架的能力,熟悉单体架构及微服务架构的特点,并最终实现掌握构建微服务架构的实战能力。

搭建 Spring Cloud 微服务系统需要哪些技术

本课程所涉及的相关的技术有 :

  • XML解析:JABX
  • JSON序列化:Jackson
  • 缓存:Redis
  • 定时器:Quartz Scheduler
  • Java模版技术Thymeleaf
  • 前端样式:Bootstrap
  • API网关:Zuul
  • 服务注册与发现:Eureka Server、Eureka Client
  • 服务交互:RestTemplate、Apache HttpClient
  • 服务消费:Ribbon、OpenFeign
  • 负载均衡:Ribbon
  • 配置中心:Config Server、Config Client
  • 服务熔断:Hystrix
  • 项目构建:Gradle

通过本课程的学习,能够掌握架构微服务系统的能力!

参考资料

要学习 Spring Cloud 微服务,除了上面的课程之前,老卫还撰写了多门微服务相关的开源书籍,注意,都是免费的书籍哦!!!

  • 简述 Microservices(微服务):https://waylau.com/ahout-microservices/
  • Spring Boot 教程:https://github.com/waylau/spring-boot-tutorial
  • Spring Cloud 教程:https://github.com/waylau/spring-cloud-tutorial
  • Gradle 3 用户指南:https://github.com/waylau/gradle-3-user-guide
  • Spring Security 教程:https://github.com/waylau/spring-security-tutorial
  • Thymeleaf 教程:https://github.com/waylau/thymeleaf-tutorial
转载: Spring Cloud 是什么

Spring Cloud 是什么相关推荐

  1. Spring cloud 微服务docker容器化最佳实践

    Spring cloud 是当下最炙手可热的微服务套件,我们将介绍如何整合Docker容器达到高效快捷的构建发布 采用了dockerfile-maven-plugin插件发布镜像到远程docker主机 ...

  2. Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

    自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注.虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭 ...

  3. Spring Cloud下微服务权限方案

    背景 从传统的单体应用转型Spring Cloud的朋友都在问我,Spring Cloud下的微服务权限怎么管?怎么设计比较合理?从大层面讲叫服务权限,往小处拆分,分别为三块:用户认证.用户权限.服务 ...

  4. 玩转Spring Cloud之配置中心(config server config client)

    玩转Spring Cloud之配置中心(config server &config client)  本文内容导航: 一.搭建配置服务中心(config server) 1.1.git方式 1 ...

  5. spring cloud微服务治理eureka、hystrix、zuul代码例子

    spring cloud微服务中台服务代码例子,包括eureka.hystrix.zuul https://github.com/birdstudiocn/spring-cloud-sample/tr ...

  6. 原 史上最简单的SpringCloud教程 | 第八篇: 消息总线(Spring Cloud Bus)(Finchley版本)

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springcloud/2018/08/30/sc-f8-bus/ 本文出自方志朋的博客 转载请标明出处: Spr ...

  7. 快速构建Spring Cloud工程

    spring cloud简介 spring cloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选.分布式会话等等.它运行环境 ...

  8. spring cloud微服务分布式云架构--hystrix的使用

    hystrix主要作用在服务消费者,进行应用的保护,当请求的服务请求超时时,做出相应的处理,避免客户端一直进行请求等待,避免在高并发的情况出现服务器死机(请求过多,内存不足) 接下来的通过一个案例对h ...

  9. Spring Cloud构建分布式电子商务平台:服务消费(基础)

    使用LoadBalancerClient 在Spring Cloud Commons中提供了大量的与服务治理相关的抽象接口,包括DiscoveryClient.这里我们即将介绍的LoadBalance ...

  10. (二)spring cloud微服务分布式云架构 - 整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢? 下面我针对于spring cloud微服务分布式云架构做了以下 ...

最新文章

  1. linux ubuntu下怎样将pdf格式文件转换为doc格式文件,Ubuntu环境下把word文档转成pdf,把pdf文件转成jpg...
  2. SpringMVC-学习笔记03【SpringMVC常用注解】
  3. Linux 上安装 appium
  4. Myeclipse下Maven的配置
  5. 在线mod计算机,MOD大师教程 手把手教你改造电脑机箱
  6. 【今日CV 计算机视觉论文速览 第127期】Fri, 7 Jun 2019
  7. c++友元模板单例模式
  8. 德国 IT 薪酬大揭秘!
  9. 安装项目管理工具 SVN+Redmine
  10. js获取td的html,js中获取 table节点各tr及td的内容简单实例
  11. python查看数据_使用Python获取GA数据
  12. 一层一层的剥开你的心之StringBuilder
  13. win7安装wildfly8.1
  14. HTML表单基本结构
  15. 利用python计算n阶行列式的源代码
  16. 我用python给我的可爱小邻居做了一个猫狗识别系统~
  17. 一个转来的简单T9输入法
  18. 智能睡眠监控APP开发有哪些好处?
  19. oracle sy imp,oracle逻辑备份imp/exp 示例用法【转】
  20. 达芬奇密码 第七十一章

热门文章

  1. 记录几个Maven库地址
  2. Linux shell逐行读取文件的方法
  3. apl脚本入门-控制语句
  4. C++创建对象的三种方式
  5. 数据可视化软件有什么特点
  6. 如何利用大数据做好数据分析
  7. 如何实现扫码登陆 扫码登陆原理
  8. javac 命令的作用_机加工行业MES系统在生产调度中的重要作用
  9. 高斯消元解线性方程组(浮点高斯消元模板)
  10. win10不能访问服务器共享文件夹权限,win10系统共享文件夹无法访问的解决方法...