微服务的诞生绝非偶然,它是互联网高速发展、技术快速更新迭代、传统技术架构无法适应新的业务场景需求等多重因素推动下诞生的产物。Java 领域, Spring Cloud 是微服务架构的优秀解决方案,功能完备、学习成本低,是微服务的不二之选。本笔记对 Spring Cloud 的全栈技术体系(模块)进行了详细的讲解,同时提供了商业案例。通过本笔记,不仅能帮助读者快速学会使用 Spring Cloud,也能掌握微服务典型场景的解决方案!
通过阅读本书,你将学会:
- 使用Spring Boot开发Web项目
- 使用Spring Cloud开发分布式系统
- Spring Data Redis、Mongodb、ElasticSearch框架的使用
- 配置中心结合Zuul 进行动态限流降级
- 分布式事务的解决思路
- 分布式任务调度框架Elastic Job 的使用
- 分库分表中间件Sharding JDBC 的使用
下面,我们来了解一下这本书!
读者对象
- Java 开发工程师
- Spring Cloud 用户和爱好者
- 微服务爱好者
本书的读者对象主要是 Java 开发人员,特别是工作1~3年的开发人员,这个阶段的开发人员资历尚浅,正需要一些实用的技术和经验来提升自己, Spring Cloud 正是一门符合提升要求的技术。因为它现在正在快速发展中,越来越多的企业开始使用 Spring Cloud 相信在不远的将来, Spring Cloud 将会成为 Java 开发人员面试的标配。
本笔记涉及内容
本书主打的是与微服务相关的实战体系。第一部分准备篇,可帮助各位读者了解微服务以及 Spring Cloud 的概念。第二部分基础篇会对 Spring Cloud 中常用的模块进行详细讲解部分实战篇开始实战性质的内容讲解。第三部分实战篇包括选择配置中心、自研发配置中心 、分布式跟踪、微服务安全认证、 Spring Boot Admin 管理微服务、快速生成 API 文档等实用内容。
最后一部分高级篇也是难度比较大的一部分,主要内容如下:
- 对 Zuul 进行扩展,即对认证、限流、降级、灰度发布等内容进行讲解
- 讲解缓存框架的使用, 解决缓存穿透、缓存雪崩等问题
- 数据存储的选型,比如对 Mysql、Mongodb、ElasticSearch 的使用进行讲解
- 分布式事务的解决方案, 重点是利用消息队列开发可靠性消息服务来实现数据的最终
- 一致性
- 讲解分布式任务调度框架 Elastic Job
- 讲解分库分表的解决方案 Sharding JDBC
笔记目录
ps:由于内容较多,本次将展示部分,如果看得不过瘾想更加深入地了解本笔记彻底掌握 SpringCloud 可在文末了解详情。
第一部分 准备篇
第一章 Spring Cloud 与微服务概述
- 传统的单体应用
- 什么是微服务
- 什么是 Spring Cloud
- 本章小结
第二章 实战前的准备工作
- 开发环境的准备
- Spring Boot 入门
- 本章小结
第二部分 基础篇
第三章 Eureka 注册中心
- Eureka
- 使用 Eureka 编写注册中心服务
- 编写服务提供者
- 编写服务消费者
- 开启 Eureka 认证
- Eureka 高可用搭建
- 常用配置讲解
- 扩展使用
- 本章小结
第四章 客户端负载均衡 Ribbon
- Ribbon
- RestTemplate 结合 Ribbon 使用
- 负载均衡策略介绍
- 自定义负载策略
- 配置详解
- 重试机制
- 本章小结
第五章 声明式 REST 客户端 Feign
- 使用 Feign 调用服务接口
- 自定义 Feign 的配置
- 脱离 Spring Cloud 使用 Feign
- 本章小结
第六章 Hystrix 服务容错处理
- Hystrix
- 在 Spring Cloud 中使用 Hystrix
- Hystrix 监控
- 整合 Dashboard 查看监控数据
- Turbine 聚合集群数据
- 本章小结
第七章 API 网关
- Zuul 简介
- 使用 Zuul 构建微服务网关
- Zuul 路由配置
- Zuul 过滤器讲解
- Zuul 容错和回退
- Zuul 高可用
- 本章小结
第三部分 实战篇
第八章 分布式配置管理
- 自研配置管理框架 Smconf 简介
- Smconf 工作原理
- Smconf 部署
- 项目中集成 Smconf
- Smconf 详细使用
- Smconf 源码解析
- 本章小结
第九章 Sleuth 服务跟踪
- Spring Cloud 集成 Sleuth
- 整合 Logstash
- 整合 Zipkin
- 本章小结
第十章 微服务之间调用的安全认证
- 什么是 JWT
- 创建统一的认证服务
- 服务提供方进行调用认证
- 服务消费方申请 Token
- Feign 调用前统一申请 Token 传递到调用的服务中
- Zuul 中传递 Token 到路由的服务中
- 本章小结
第十一章 Spring Boot Admin
- Spring Boot Admin 的使用方法
- 开启认证
- 集成 Eureka
- 集成 Turbine
- 监控服务
- 本章小结
第十二章 服务的 API 文档管理
- Swagger 简介
- 集成 Swagger 管理 API 文档
- Swagger 注解
- Eureka 控制台快速查看 Swagger 文档
- 本章小结
第四部分 高级篇
第十三章 API 网关扩展
- 用户认证
- 服务限流
- 服务降级
- 灰度发布
- 本章小结
第十四章 微服务之缓存
- Guava Cache 本地缓存
- Redis 缓存
- 防止缓存穿透方案
- 防止缓存雪崩方案
- 本章小结
第十五章 微服务之存储
- 存储选型
- Mongodb
- Mysql
- Elasticsearch
- 本章小结
第十六章 微服务之分布式事物解决方案
- 两阶段型
- TCC 补偿型
- 最终一致性
- 最大努力通知型事物
- 本章小结
第十七章 分布式任务调度
- Elastic-Job
- 快速集成
- 任务使用
- 配置参数讲解
- 多节点并行调度
- 事件追踪
- 扩展功能
- 运维平台
- 使用经验分享
- 本章小结
第十八章 分库分表解决方案
- Sharding-JDBC
- 快速集成
- 读写分离实战
- 分库分表实战
- 分布式主键
- 本章小结
写在最后
如果你需要完整版PDF学习资源请扫描下方名片100%获取免费下载方式!
点击下方名片