前言

SpringCloud 是什么

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

Spring Cloud其实是一套规范,是一套用于构建微服务架构的规范,而不是一个可以拿来即用的框架(所谓规范就是应该有哪些功能组件,然后组件之间怎么配合,共同完成什么事情)。在这个规范之下第三方的Netflix公司开发了一些组件、Spring官方开发了一些框架/组件,包括第三方的阿里巴巴开发了一套框架/组件集合Spring Cloud Alibaba,这些才是Spring Cloud规范的实现。

小编将从前言、目录,主要内容这三个部分为大家讲解Spring Cloud与微服务构建,+jcc4261同时,也希望本文能够帮助到大家的学习

先来看看这份SpringCloud 目录

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介

主要内容

第1章微服务简介

本章主要介绍了什么是微服务、为什么需要微服务、微服务的优缺点和面临的挑战,并且将单体架构的系统和微服务架构的系统进行了比较。

Spring Cloud微服务架构简介 spring cloud微服务架构开发_学习_02

Spring Cloud微服务架构简介 spring cloud微服务架构开发_微服务_03

第2章Spring Cloud简介

Spring Cloud 作为Java语言的微服务框架,它依赖于Spring Boot,有快速开发、持续交付和容易部署等特点。Spring Cloud的组件非常多,涉及微服务的方方面面,并在开源社区Spring和Netflix、Pivotal两大公司的推动下越来越完善。本章主要介绍Spring Cloud,将从以下方面来讲解。

  • 微服务应该具备的功能
  • Spring Cloud介绍
  • Dubbo介绍
  • Kubcrnetes介绍
  • Spring Cloud与 Dubbo比较
  • Spring Cloud与Kubermetes 比较

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_04

第3章构建微服务的准备

第4章开发框架Spring Boot

这两章主要介绍了构建微服务的准备工作:开发环境的构建和Spring Boot的使用

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_05

Spring Cloud微服务架构简介 spring cloud微服务架构开发_学习_06

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_07

第5章~9章

第5章服务注册和发现Eureka

第6章负载均衡Ribbon

第7章声明式调用Feign

第8章熔断器Hystrix

第9章路由网关Spring Cloud Zuul

这一部分介绍了Spring Cloud框架的基础模块——Spring Cloud Netflix模块,涵盖了Spring Cloud构建微服务的基础组件。诸如Eureka、Ribbon、Feign、Hystrix和Zuul等组件为微服务系统提供了基本的服务治理能力。这几章以案例为切入点,由浅人深介绍这些组件,并从源码的角度分析这些组件的工作原理。

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_08

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_09

第5章将从以下4个方面来讲解服务注册与发现模块Eurekag

  • Eureka简介
  • 编写一个Eureka注册和发现的例子
  • 深人理解Eureka
  • 编写高可用的Eureka Server

第6章,主要讲解如何使用RestTemplate和lRibbon相结合作为服务消费者去消费服务,同时从源码的角度来深入讲解Ribbon.

Spring Cloud微服务架构简介 spring cloud微服务架构开发_java_10

第7章声明式调用Feign

Spring Cloud微服务架构简介 spring cloud微服务架构开发_java_11

第8章,将讲述如何在用RestTemplate和Feign 消费服务时使用熔断器Hystrix,将从以下7个方面进行讲解

  • 什么是Hystrix
  • Hystrix解决了什么问题
  • Hystrix 的工作原理
  • 如何在RestTemplate和 Ribbon作为服务消费者时使用Hystrix
  • 如何在Feign作为服务消费者时使用Hystrix
  • 如何使用Hystrix Dashboard监控熔断器的状况
  • 如何使用Turbine聚合多个Hystrix Dashboard

第9章,本章讲解Netflix构建微服务的另一个组件——智能路由网关组件Zuul,将从以下3个方面来讲述Zuul

  • 为什么需要Zuul
  • Zuul的工作原理
  • Zuul的案例实战

第10章服务网关

本章主要介绍了Spring Cloud的第二代网关Gateway。Gateway在性能上比Zuul要优异很多,是Spring Cloud 的新一代网关。

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_12

第11章服务注册和发现Consul

本章首先讲解了Consul的基本架构和原理,以及它和Eureka的区别,然后以案例的形式讲解了如何使用Consul作为注册中心和分布式配置中心。

需要注意的是,Consul支持的KV存储的value值不能超过512KB;在dev模式启动下,所有数据都存储在内存中,重启Consul时会导致所有数据丢失;使用非dev模式启动时,Consul的数据会持久化,数据不会丢失。

Spring Cloud微服务架构简介 spring cloud微服务架构开发_java_13

第12章配置中心Spring Cloud Config

本章讲述SpringCloud的另一组件——分布式配置中心Spring Cloud Configo,分为以下4个方面

  • Config Server从本地读取配置文件
  • Config Server从远程Git仓库读取配置文件
  • 搭建高可用Config Scrver集群
  • 使用Spring Cloud Bus刷新配置

第13章服务链路追踪Spring Cloud sleuth

本章主要介绍了链路追踪组件Spring Cloud Sleuth,包括微服务系统为什么需要链路追踪组件,并以案例的形式详细介绍了如何在Spring Cloud微服务系统中使用链路追踪,以及如何传输、存储和展示链路数据。

Spring Cloud微服务架构简介 spring cloud微服务架构开发_spring cloud_14

第14章微服务监控Spring Boot Admin

本章是以案例的形式介绍了Spring Boot Admin,包括Spring Boot Admin在微服务系统中的应用、在 Spring BootAdmin中集成安全组件。

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_15

第15章Spring Boot Security详解

第16章使用Spring Cloud OAuth2保护微服务系统

第17章使用Spring Security OAuth2和JWT保护微服务系统

这三章主要介绍了Spring Cloud微服务系统的安全验证模块,包括Spring Boot Security组件和Spring Cloud OAuth2模块。

第15章,主要详细介绍了如何在Spring Boot应用中使用SpringBoot Security

Spring Cloud微服务架构简介 spring cloud微服务架构开发_spring cloud_16

第16章,介绍了如何在Spring Cloud微服务系统中使用Spring Cloud OAuth2来保障微服务系统的安全

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_17

第17章,介绍了如何在Spring Cloud微服务系统中使用Spring Cloud OAuth2和JWT来保护微服务的系统安全

Spring Cloud微服务架构简介 spring cloud微服务架构开发_spring cloud_18

第18章使用 Spring Cloud构建微服务综合案例

本章是以一个综合案例介绍了使用Spring Cloud构建微服务系统的全过程,该案例是对全书内容的总结和提炼。

Spring Cloud微服务架构简介 spring cloud微服务架构开发_微服务_19

Spring Cloud微服务架构简介 spring cloud微服务架构开发_Spring Cloud微服务架构简介_20