Alibaba SpringCloud手抄本,啃完秒杀面试官

作为Java语言的落地微服务框架,Spring Cloud已经在各大企业普遍应用,各大云厂商也支持Spring Cloud微服务框架的云产品。可以说,Spring Cloud微服务框架已经应用到了各大行业之中,并成为Java开发者的必备技能之一, 熟练掌握Spring Cloud是面试者的加分项。Spring Cloud由Spring Cloud社区维护,并且在Pivatol和Nettlix两大公司的推动下飞速发展。随着Eureka的闭源,虽然Netflix OSS等组件进入维护期,不再提供新功能,但SpringCloud微服务框架并没有受到显著影响,而是被越来越多的企业和开发者所接受。阿里巴巴推出的Nacos和Sentinel等组件已经加入Spring Cloud 孵化器项目,未来极有可能替代NetlixOSS,因此Spring Cloud是一个极具生 命力的微服务框架。

今天这份学习笔记来自于Alibaba SpringCloud生态系统,笔记全面涵盖了通过Spring Cloud 构建微服务的相关知识点:微服务架构和Spring Cloud、通过Spring Cloud 构建微服务的准备工作、以案例为切入点,讲解了通过Spring Cloud构建微服务的基础组件,包括Eureka、Ribbon、 Feign、Hystrix、Zul、Gateway、Consul、Config、Sleuth、 Admin等组件、使用Spring CloudOAuth2来保护微服务系统的相关知识。最后用一个综合案例全面讲解了如何使用Spring Cloud构建微服务,可用于实际开发中。

这份笔记的内容太多了,为了不影响大家的整体阅读体验,我把这份笔记完整版的获取方式放在了文末!!!

第一章微服务简介

单体架构及其存在的不足

微服务的不足

服务的部署

微服务和SOA的关系

微服务的设计原则

Alibaba SpringCloud手抄本,啃完秒杀面试官_第1张图片

 

第2章Spring Cloud简介

微服务应该具备的功能

  • 服务的注册与发现
  • 服务的负载均衡
  • 服务的容错
  • 服务网关
  • 服务配置的统一 管理
  • 服务链路追踪

Spring Cloud

  • 简介
  • 常用组件
  • 项目一览

Dubbo简介

Spring Cloud与Dubbo比较

Kubernetes简介

Spring Could与Kubernetes比较

Alibaba SpringCloud手抄本,啃完秒杀面试官_第2张图片

 

第3章构建微服务的准备

JDK的安装

  • JDK 的下载和安装
  • 环境变量的配置

IDEA的安装

  • IDEA 的下载
  • 用 IDEA创建一个Spring Boot工程
  • 用IDEA启动多个SpringBoot工程实例

构建工具Maven的使用

  • Maven 简介
  • Maven的安装
  • Maven 的核心概念
  • 编写 Pom文件
  • Maven 构建项目的生命周期
  • 常用 的Maven命令

Alibaba SpringCloud手抄本,啃完秒杀面试官_第3张图片

 

第4章开发框架Spring Boot

Spring Boot简介

  • Spring Boot的特点
  • Spring Boot的优点

用IDEA构建Spring Boot工程

  • 项目结构
  • 在 Spring Boot工程中构建Web程序
  • Spring Boot的测试

Spring Boot配置文件详解

  • 自定义属性
  • 将配置 文件的属性赋给实体类
  • 自定义配置文件
  • 多个环境的配置文件

运行状态监控Actuator

  • 查看运行程序的健康状态
  • 查看运 行程序的Bean
  • 使用Actuator关闭应用程序
  • 使用shell连接Actuator

Spring Boot整合JPA

Spring Boot整合Redis

  • Redis的安装
  • 在Spring Boot中使用Redis

Spring Boot整合Swagger2,搭建Restful API在线文档

Alibaba SpringCloud手抄本,啃完秒杀面试官_第4张图片

 

第5章服务注册和发现Eureka

Eureka简介

  • 什么是Eureka
  • 为什么选择Eureka
  • Eureka的基本架构

编写Eureka Server

编写Eureka Client

源码解析Eureka

  • Eureka 的一些概念
  • Eureka 的高可用架构.
  • Register 服务注册
  • Renew 服务续约
  • 为什么EurekaClient获取服务实例这么慢
  • Eureka的自我保护模式

构建高可用的Eureka Server集群

Alibaba SpringCloud手抄本,啃完秒杀面试官_第5张图片

 

第6章负载均衡Ribbon

RestTemplate简介

Ribbon简介

使用RestTemplate和Ribbon来消费服务

LoadBalancerClient简介

源码解析Ribbon

Alibaba SpringCloud手抄本,啃完秒杀面试官_第6张图片

 

第7章声明式调用Feign

写一个Feign客户端

FeignClient详解

FeignClient的配置

从源码的角度讲解Feign的工作原理

在Feign中使用HttpClient和OKHttp

Feign是如何实现负载均衡的

Alibaba SpringCloud手抄本,啃完秒杀面试官_第7张图片

 

 

第8章熔断器Hystrix

Hystrix简介

Hystrix解决的问题

Hystrix的设计原则

Hystrix的工作机制

在RestTemplate和Ribbon上使用熔断器

在Feign上使用熔断器

使用Hystrix Dashboard监控熔断器的状态

使用Turbine聚合监控

Alibaba SpringCloud手抄本,啃完秒杀面试官_第8张图片

 

第9章路由网关Spring Cloud Zuul

为什么需要Zuul

Zuul的工作原理

案例实战

  • 搭建 Zuul服务
  • 在Zuul上配置API接口的版本号
  • 在Zuul上配置熔断器
  • 在Zuul中使用过滤器
  • Zuul的常见使用方式

Alibaba SpringCloud手抄本,啃完秒杀面试官_第9张图片

 

第10章服务网关

服务网关的实现原理

断言工厂

  • After路由断言工厂
  • Header断言工厂
  • Cookie路由断言工厂
  • Host路由断言工厂
  • Method路由断言工厂
  • Path路由断言工厂
  • Query路由断言工厂

过滤器

  • 过滤器的作用
  • 过滤器的生命周期
  • 网关过滤器
  • 全局过滤器

限流

  • 常见的限流算法
  • 服务网关的限流

服务化

  • 工程介绍
  • service-gateway工程详细介绍

Alibaba SpringCloud手抄本,啃完秒杀面试官_第10张图片

 

第11章服务注册和发现Consul

什么是Consul

  • 基本术语
  • Consul的特点和功能
  • Consul的原理
  • Consul的基本架构
  • Consul服务注册发现流程

Consul与Eureka比较

下载和安装Consul

使用Spring Cloud Consul进行服务注册和发现

  • 服务提供者consul-provider
  • 服务消费者consul-provider

使用Spring Cloud Consul Config做服务配置中心

动态刷新配置

Alibaba SpringCloud手抄本,啃完秒杀面试官_第11张图片

 

第12章配置中心Spring Cloud Config

Config Server从本地读取配置文件

  • 构建Config Server
  • 构建Config Client

Config Server从远程Git仓库读取配置文件

构建高可用的Config Server

  • 构建Eureka Server
  • 改造Config Server
  • 改造Config Client

使用Spring Cloud Bus刷新配置

将配置存储在MySQL数据库

  • 改造config-server工程
  • 初始化数据库

Alibaba SpringCloud手抄本,啃完秒杀面试官_第12张图片

 

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

为什么需要Spring Cloud Sleuth

基本术语

案例讲解

  • 启动Zipkin Server
  • 构建服务提供者
  • 构建服务消费者
  • 项目演示

在链路数据中添加自定义数据

使用RabbitMQ传输链路数据

在MySQL数据库中存储链路数据

在ElasticSearch中存储链路数据

用Kibana展示链路数据

Alibaba SpringCloud手抄本,啃完秒杀面试官_第13张图片

 

第14章微服务监控Spring Boot Admin

使用Spring Boot Admin监控Spring Boot应用程序

  • 创建Spring Boot Admin Server
  • 创建Spring Boot Admin Client

使用Spring Boot Admin监控Spring Cloud微服务

  • 构建Admin Server
  • 构建Admin Client

在Spring Boot Admin中添加Security和Mail组件

  • Spring Boot Admin集成Security组件
  • Spring Boot Admin集成Mail组件

Alibaba SpringCloud手抄本,啃完秒杀面试官_第14张图片

 

第15章Spring Boot Security详解

Spring Security简介

  • 什么是Spring Security
  • 为什么选择Spring Security
  • Spring Security提供的安全模块

Spring Boot Security与Spring Security的关系

Spring Boot Security案例详解

  • 构建Spring Boot Security工程
  • 配置Spring Security
  • 编写相关界面
  • Spring Security方法级别上的保护
  • 从数据库中读取用户的认证信息

Alibaba SpringCloud手抄本,啃完秒杀面试官_第15张图片

 

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

什么是OAuth2

如何使用Spring OAuth2

  • OAuth2 Provider
  • OAuth2 Client

案例分析

  • 编写Eureka Server
  • 编写Uaa授权服务
  • 编写service-hi资源服务

Alibaba SpringCloud手抄本,啃完秒杀面试官_第16张图片

 

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

JWT简介

  • 什么是JWT
  • JWT的结构
  • WT的应用场景
  • 如何使用JWT

案例分析

  • 案例架构设计
  • 编写主Maven工程
  • 编写Eureka Server
  • 编写Uaa授权服务
  • 编写user-service资源服务

Alibaba SpringCloud手抄本,啃完秒杀面试官_第17张图片

 

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

案例介绍

  • 工程结构
  • 使用的技术栈
  • 工程架构
  • 功能展示

案例详解

  • 准备工作
  • 构建主Maven工程
  • 构建eureka-server工程
  • 构建config-server工程
  • 构建Zipkin工程
  • 构建monitoring-service工程
  • 构建uaa-service工程
  • 构建gateway-service工程
  • 构建admin-service工程
  • 构建user-service工程
  • 构建blog-service工程
  • 构建log-service工程

启动源码工程

项目演示

Alibaba SpringCloud手抄本,啃完秒杀面试官_第18张图片

 

需要免费获取这份笔记的老铁,麻烦帮忙动动发财的小手帮忙转发一下这篇文章+关注,然后扫码获取!

Alibaba SpringCloud手抄本,啃完秒杀面试官_第19张图片

你可能感兴趣的:(SpringCloud,Docker,微服务)