SpringCloud微服务快速上手

SpringCloud微服务快速上手

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

深入讲解微服务原理,详尽分析分布式原理,解析面试实战真题。

内容简介

本书介绍了当下最主流的属于Spring生态的微服务框架。

本书内容全面,介绍了微服务架构的发展历程,包含Spring Cloud Netflix和Spring Cloud Alibaba的组件,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等。在解读核心组件的实现原理的同时,配以案例进行实践。

本书内容包含微服务架构和云原生架构,读者在掌握微服务之后,可以进一步掌握云原生知识。

章节目录

版权信息

作者简介

内容简介

前言 Preface

第1章 微服务概述

1.1 单体架构

1.2 集群架构

1.3 微服务架构

1.4 微服务特性

1.5 微服务实践参考

1.6 微服务的缺点

1.7 Spring Cloud简介

1.8 小结

第2章 微服务注册中心

2.1 为什么要有注册中心

2.2 注册中心的设计思路

2.2.1 注册中心的存储结构

2.2.2 注册中心需要具备的操作

2.3 Eureka的使用

2.3.1 创建注册中心服务端Eureka Server

2.3.2 创建客户端

2.3.3 Eureka Server高可用搭建

2.3.4 Eureka Server端用户认证

2.3.5 自我保护机制

2.3.6 多网卡选择

2.3.7 Eureka Server源码解析

2.3.8 Eureka Client源码解析

2.4 Nacos的使用

2.4.1 搭建单节点Nacos Server

2.4.2 创建Nacos Client

2.4.3 高可用Nacos Server搭建

2.5 Consul的使用

2.5.1 搭建单节点Consul Server

2.5.2 创建Consul Client

2.5.3 高可用Consul Server搭建

2.6 小结

第3章 服务调用

3.1 生产环境中的微服务架构

3.2 RestTemplate调用

3.2.1 RESTful风格介绍

3.2.2 RestTemplate实战

3.2.3 RestTemplate源码解析

3.2.4 负载均衡

3.2.5 自定义配置负载均衡

3.2.6 Ribbon源码解析

3.3 OpenFeign调用

3.3.1 OpenFeign的基础使用

3.3.2 自定义URL

3.3.3 自定义OpenFeign的配置

3.3.4 Feign源码解析

3.4 小结

第4章 服务的熔断、降级和限流

4.1 熔断和降级的应用场景

4.2 熔断和降级的使用

4.2.1 RestTemplate中熔断和降级的使用

4.2.2 OpenFeign中熔断和降级的使用

4.3 自定义熔断配置

4.4 限流

4.4.1 计数器(固定窗口)算法

4.4.2 滑动时间窗口算法

4.4.3 漏桶限流算法

4.4.4 令牌桶限流算法

4.5 Sentinel熔断和限流实战

4.5.1 Sentinel控制台安装

4.5.2 Sentinel在程序中的配置

4.5.3 Sentinel流控规则

4.5.4 Sentinel降级规则

4.5.5 Sentinel热点规则

4.5.6 自定义流控处理

4.6 小结

第5章 配置中心

5.1 配置中心应用场景

5.2 配置中心的设计思路

5.2.1 配置存储

5.2.2 配置的属性

5.2.3 配置服务

5.3 Spring Cloud配置中心的使用

5.3.1 在Git上创建配置

5.3.2 创建配置的服务端

5.3.3 创建配置的客户端

5.3.4 配置的手动刷新

5.3.5 配置的自动刷新

5.3.6 在MySQL上创建配置

5.3.7 配置内容对称加密

5.3.8 配置内容非对称加密

5.3.9 配置中心安全认证

5.3.10 高可用配置中心

5.4 Nacos配置中心使用

5.4.1 Nacos配置中心的基本使用

5.4.2 Nacos配置扩展

5.4.3 Nacos模型管理

5.5 小结

第6章 服务网关

6.1 网关Gateway的基本使用

6.1.1 微服务搭建passenger-api

6.1.2 Gateway网关搭建cloud-gateway

6.1.3 Java类加载器层级结构

6.1.4 Java双亲委派机制原理

6.1.5 Java ClassLoader类的原理

6.1.6 Java URLClassLoader类的原理

6.1.7 Java双亲委派机制的打破

6.1.8 Java自定义类加载器

6.2 路由断言使用

6.2.1 Path路由断言

6.2.2 Query路由断言

6.2.3 Method路由断言

6.2.4 Header路由断言

6.2.5 自定义路由断言

6.3 过滤器的使用

6.3.1 添加请求头过滤器

6.3.2 移除请求头过滤器

6.3.3 状态码设置

6.3.4 重定向设置

6.3.5 过滤器源码

6.4 全局过滤器

6.5 小结

第7章 链路追踪

7.1 链路追踪的设计思路

7.2 链路追踪的使用

7.3 追踪原理分析

7.4 可视化链路追踪

7.5 消息队列收集链路追踪

7.6 小结

第8章 服务监控

8.1 Spring Boot Admin的使用

8.2 监控内容介绍

8.3 认证保护

8.4 服务监听邮件通知

8.5 服务监听钉钉通知

8.6 小结

第9章 分布式锁解决方案

9.1 业务场景

9.2 单机JVM锁

9.2.1 系统架构与核心代码

9.2.2 JMeter安装与配置

9.2.3 压力测试

9.2.4 单机JVM锁的问题

9.3 分布式锁思路分析

9.4 MySQL分布式锁

9.5 Redis分布式锁

9.5.1 死锁问题

9.5.2 过期时间问题

9.5.3 Redisson框架使用

9.5.4 Redis单节点问题

9.5.5 红锁

9.5.6 Redis做分布式锁的终极问题

9.6 Zookeeper分布式锁

9.6.1 Zookeeper节点类型

9.6.2 Zookeeper分布式锁原理

9.6.3 Zookeeper结合MySQL乐观锁

9.6.4 Zookeeper分布式锁代码实现

9.7 小结

第10章 分布式事务解决方案

10.1 分布式事务业务场景

10.2 分布式事务思路分析

10.3 X/Open分布式事务模型

10.4 两阶段提交协议

10.4.1 两阶段提交协议的过程

10.4.2 两阶段提交协议的缺点

10.5 三阶段提交协议

10.5.1 三阶段提交协议的过程

10.5.2 两阶段提交协议和三阶段提交协议的区别

10.6 CAP定理和BASE理论

10.6.1 CAP定理

10.6.2 BASE理论

10.7 TCC分布式事务解决方案

10.7.1 TCC方案

10.7.2 TCC方案的异常处理

10.8 可靠消息最终一致性方案

10.8.1 可靠消息最终一致性问题分析

10.8.2 本地消息事件表方案

10.8.3 RocketMQ事务消息方案

10.9 RocketMQ安装部署

10.10 RocketMQ事务消息实战

10.10.1 生产者producer

10.10.2 消费者consumer

10.11 Seata分布式事务解决方案

10.12 Seata AT模式实战

10.12.1 启动注册中心

10.12.2 下载安装Seata

10.12.3 搭建订单服务

10.12.4 搭建库存服务

10.12.5 测试

10.13 Seata TCC模式实战

10.13.1 订单服务

10.13.2 库存服务

10.13.3 测试

10.14 最大努力通知方案

10.14.1 什么是最大努力通知方案

10.14.2 最大努力通知方案实战

10.15 小结

第11章 微服务鉴权认证安全设计

11.1 鉴权认证常见的场景及解决方案

11.1.1 单体应用

11.1.2 微服务应用

11.2 OAuth 2.0介绍

11.3 OAuth 2.0实战

11.4 JWT使用

11.4.1 JWT的介绍

11.4.2 JWT的实践

11.4.3 JWT的使用场景

11.5 小结

SpringCloud微服务快速上手是2022年由清华大学出版社出版,作者晁鹏飞。

得书感谢您对《SpringCloud微服务快速上手》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
华为LiteOS:快速上手物联网应用开发 电子书
联网大讲堂创始人朱有鹏力作鸿蒙华为物联网操作系统,HarmonyOS时代,IoT实战入门嵌入式,从物联网基础概念入手,掌握华为LiteOS系统与应用开发。
从小白到高手LogicProX快速上手教程 电子书
基于新版Logic Pro X编写,玩转新版本的实用功能;从软件的选择与下载安装讲起,零基础也能轻松上手。
PyQt编程快速上手:PythonGUI开发从入门到实践 电子书
PyQt实用工具书,帮助读者快速上手功能强大的开发工具,轻松掌握GUI开发技巧,创建各式各样的桌面程序。
微信小程序快速开发 电子书
本书根据微信小程序的内容,全面系统地介绍了微信小程序的搭建和开发。本书主要内容有小程序注册、编程基础知识、小程序架构搭建、图片组件和单击事件、表单组件和条件渲染、网络请求和flex布局、swiper组件和列表渲染、页面周期和数组缓存、服务器搭建、数据库和用户信息API、模板消息和交互反馈API、页面参数传递和分享、画布组件和绘图API、日期函数和函数封装、动画API和冒泡事件、回调函数、上传下载和
Python快速编程入门 电子书
Python是一种面向对象、解释性的高*程序语言,它已经被应用在众多领域,包括Web开发、操作系统管理、服务器运维的自动化脚本、科学计算、桌面软件、服务器软件(网络软件)、游戏等方面。本书以Windows为平台,系统全面地讲解了Python3的基础知识,其中,第1章主要是带领读者认识Python;第2章主要针对Python的基础语法进行讲解;第3章主要介绍Python中的常用语句;第4~5章主要介