快速掌握SpringCloud?推荐一份GitHub获获200w+star的学习手册

微服务架构介绍

近年来,微服务架构一直是互联网技术圈的热点之一,越来越多的互联网应用都采用了微服务架构作为系统构建的基础,很多新技术和理念如Docker、Kubernetes、DevOps、持续交付、Service Mesh等也都在关注、支持和跟随微服务架构的发展。

本文将会概要性地介绍微服务架构:包括微服务架构是如何演进的,微服务架构的主要流派,当前主流的云原生应用与微服务之间的关系等。

本文全面系统地介绍Spring Cloud及其在微服务架构中的应用。全文共13章。

第1章介绍微服务架构相关的基本概念;第2章介绍Spring Cloud中包含的组件以及Spring Cloud约定的上下文;第3章介绍Spring Cloud的基础: Spring Boot,包括如何构建一个Spring Boot服务、SpringBoot的配置文件和Actuator提供的监控管理端点;第4~13章详细讲解Spring Cloud组件,包括Eureka (服务注册与发现)、OpenFeign (声明式RESTful客户端)、Hystrix (断路器)、Ribbon (客户端负载均衡器)、Gateway ( API网关)、Config ( 配置中心)、Stream (消息驱动)、Bus (消息总线)、Security (认证与授权)、Sleuth (服务链路追踪)。

本文为读者揭开了Spring Cloud组件实现的技术内幕,并提供了进阶应用的思路,可作为使用Spring Cloud进行微服务架构实践的参考。

目录

第1章微服务架构介绍

1.1微服务架构的出现

  • 1.1.1 单体应用架构
  • 1.1.2 SOA架构
  • 1.1.3 微服务架构

1.2微服务架构的流派

1.3云原生与微服务

1.4 本章小结

第2章Spring Cloud总览

2.1 Spring Cloud架构

2.2 Spring Cloud特性

  • 2.2.1 Spring CloudContext:应用上下文
  • 2.2.2 Spring CloudCommons:公共抽象

第3章Spring Cloud的基础: Spring Boot

3.1 Spring Boot简介

3.2 构建一个微服务

3.3 Spring Boot配置文件

  • 3.3.1 默认配置文件
  • 3.3.2 外部化配置
  • 3.3.3 YAML
  • 3.3.4 自动载入外部属性到Bean
  • 3.3.5 多Profile
  • 3.3.6 Starter
  • 3.3.7 自制一个Starter
  • 3.3.8 Actuator

3.4 本章小结

第4章服务注册与发现: Eureka

4.1 基础应用

4.1.1 Eureka简介

  • 4.1.2 搭建Eureka服务注册中心
  • 4.1.3 搭建Eureka服务提供者
  • 4.1.4 搭建Eureka服务调用者
  • 4.1.5 Eureka服务注册和发现
  • 4.1.6 Consul的简单应用

4.2 服务发现原理

4.3 Eureka Client源码解析

  • 4.3.1 读取应用自身配置信息
  • 4.3.2 服务发现客户端
  • 4.3.3 拉取注册表信息
  • 4.3.4服务注册
  • 4.3.5初始化定时任务
  • 4.3.6服务下线

4.4 Eureka Server源码解析

  • 4.4.1 服务实例注册表
  • 4.4.2 服务注册
  • 4.4.3 接受服务心跳
  • 4.4.4 服务剔除
  • 4.4.5 服务下线
  • 4.4.6 集群同步
  • 4.4.7 获取注册表中服务实例信息

4.5 进阶应用

  • 4.5.1 Eureka Instance和Client的元数据
  • 4.5.2 状态页和健康检查页端口设置
  • 4.5.3 区域与可用区
  • 4.5.4 高可用性服务注册中心

4.6本章小结

第5章 声明式RESTful客户端: Spring Cloud OpenFeign

5.1 基础应用

  • 5.1.1微服务之间的交互
  • 5.1.2 OpenFeign简介
  • 5.1.3 代码示例

5.2 源码分析

  • 5.2.1 核心组件与概念
  • 5.2.2 动态注册BeanDefinition
  • 5.2.3 实例初始化
  • 5.2.4 函数调用和网络请求

5.3 进阶应用

  • 5.3.1 Decoder与Encoder的定制化
  • 5.3.2 请求/响应压缩

5.4 本章小结

第6章断路器:Hystrix

6.1基础应用

  • 6.1.1 RestTemplate与Hystrix
  • 6.1.2 Openeign与Hystrix

6.2 Hystrix原理

  • 6.2.1 服务雪崩
  • 6.2.2 断路器
  • 6.2.3服务降级操作
  • 6.2.4 资源隔离
  • 6.2.5 Hystrix实现思路

6.3 源码解析

  •  6.3.1 封装Hystrix.co mmand
  • 6.3.2 HystrixComm and类结构
  • 6.3.3异步回调执行命令
  • 6.3.4异步执行命令和同步执行命令
  • 6.3.5 断路器逻辑
  • 6.3.6 资源隔离
  • 6.3.7 请求超时监控
  • 6.3.8 失败回滚逻辑

6.4进阶应用

  • 6.4.1 异步与异步回调执行命令
  • 6.4.2 继承HystrixCommand
  • 6.4.3 请求合并

6.5本章小结

第7章 客户端负载均衡器:Spring Cloud Netlix Ribbon

7.1 负载均衡

7.2 基础应用

7.3 源码分析

  • 7.3.1 配置和实例初始化
  • 7.3.2 与OpenFeign的集成
  • 7.3.3 负载均衡器Loa dBalancerClient
  • 7.3.4 IL oadBalancer
  • 7.3.5负载均衡策略实现

7.4 进阶应用

  • 7.4.1 Ribbon API
  • 7.4.2 使用Netty发送网络请求
  • 7.4.3 只读数据库的负载均衡实现

7.5本章小结

第8章AP网关: Spring CIoud Gateway

8.1 Spring Cloud Gateway介绍

8.2基础应用

  • 8.2.1 用户服务
  • 8.2.2 网关服务
  • 8.2.3客户端的访问

8.3源码解析

  • 8.3.1 初始化配置
  • 8.3.2网关处理器
  •  8.3.3路由定义定位器
  • 8.3.4路由定位器
  • 8.3.5 路由断言
  • 8.3.6网关过滤器
  • 8.3.7全局过滤器
  • 8.3.8 API端点

8.4应用进阶

  • 8.4.1 限流机制
  • 8.4.2 熔断降级
  • 8.4.3 网关重试过滤器

8.5本章小结

第9章配置中心: SpringCloud Config

9.1基础应用

  • 9.1.1 配置客户端
  •  9.1.2配置仓库
  • 9.1.3 服务端
  • 9.1.4 配置验证
  • 9.1.5 配置动态更新

9.2源码解析

  • 9.2.1 配置服务器
  • 9.2.2配置客户端

9.3应用进阶

  • 9.3.1为Config Serv er配置多个repo
  • 9.3.2客户端覆写远端的配置属性
  • 9.3.3 属性覆盖
  • 9.3.4 安全保护
  • 9.3.5加密解密
  • 9.3.6快速响应失败与重试机制

9.4本章小结

第10章消息驱动: SpringCloud Stream

10.1 消息队列

10.2 基础应用

  • 10.2.1 声明和绑定通道
  • 10.2.2 自定义通道
  • 10.2.3 接收消息
  • 10.2.4 配置

10.3 源码分析

  • 10.3.1 动态注册BeanDefinition
  • 10.3.2 绑定服务
  • 10.3.3 获取绑定器
  • 10.3.4 绑定生产者
  • 10.3.5 消息发送的流程
  • 10.3.6 StreamListener注解的处理
  • 10.3.7 绑定消费者
  • 10.3.8 消息的接收

10.4 进阶应用

  • 10.4.1 Binder ForRocketMQ
  • 10.4.2 多实例
  • 10.4.3分区

10.5 本章小结

第11章消息总线: SpringCloud Bus

11.1基础应用

  • 11.1.1 配置服务器
  • 11.1.2 配置客户端
  • 11.1.3 结果验证

11.2源码解析

  • 11.2.1 事件的定义与事件监听器
  • 11.2.2 消息的订阅与发布
  • 11.2.3 控制端点

11.3 应用进阶

  • 11.3.1 在自定义的包中注册事件
  • 11.3.2 自定义监听器
  • 11.3.3 事件的发起者

11.4 本章小结

第12章认证与授权: Spring Cloud Security

12.1基础应用

  • 12.1.1 OAuth2简介
  • 12.1.2 JWT
  • 12.1.3 搭建授权服务器
  • 12.1.4 配置资源服务器
  • 12.1.5 访问受限资源

12.2 整体架构

12.3 源码解析

  • 12.3.1 安全上下文
  • 12.3.2 认证
  • 12.3.3 授权
  • 12.3.4 Spring Security中的过滤器与拦截器
  • 12.3.5 授权服务器
  • 12.3.6 资源服务器

12.4 进阶应用

  • 12.4.1 Spring Secur ity定制
  • 12.4.2 OAuth2定制
  • 12.4.3 sO单点登录

12.5本章小结

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

13.1 链路监控组件简介

13.2 基础应用

  • 13.2.1 特性
  • 13.2.2 项目准备
  • 13.2.3 Spring CloudSleuth独立实现
  • 13.2.4集成Zipkin

13.3 本章小结

因为文章内容篇幅过长,平台限制字数,关于完整版内容,若是感兴趣想学习的朋友

相关知识连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值