类似推荐
编辑推荐
本书深入介绍SpringCloud微服务架构。
内容简介
本书专注于介绍SpringCloud微服务架构,内容涵盖构建和应用微服务架构所需的关键知识和技术。
本书共分为14章。第1~3章介绍微服务架构的发展历程、SpringCloud概述以及使用SpringBoot构建微服务应用的实战技巧;
第4~7章重点讲解Eureka服务注册与发现,Ribbon客户端负载均衡和Feign服务调用,Hystrix的限流、降级和熔断,帮助读者理解和应用微服务架构中的核心组件;第8、9章深入研究微服务网关SpringCloudGateway和微服务配置中心SpringCloudConfig的实现;
第10~12章介绍微服务架构下的统一认证和授权、微服务全链路跟踪SkyWalking,并展示如何集成Prometheus+Grafana实现微服务监控的方法和技巧;第13、14章引导读者使用Docker和DockerCompose实现微服务容器化部署,并通过项目实战展示如何使用SpringCloud构建图书管理系统。
作者简介
编著者章为忠,软件工程专业,PMP认证及信息系统项目管理师,在软件开发与系统架构领域潜心耕耘十余载。热衷于技术架构的探索,对技术领域满怀激情,特别是在软件开发与架构设计方面沉淀了深厚造诣。
章节目录
版权信息
内容简介
作者简介
前言
第1章 微服务的前世今生
1.1 软件架构的演化之路
1.2 什么是微服务
1.3 为什么需要微服务
1.4 微服务与单体、SOA的区别
1.5 什么场景适合微服务
1.6 微服务架构的形态
1.7 本章小结
第2章 Spring Cloud概述
2.1 Spring Cloud简介
2.1.1 什么是Spring Cloud
2.1.2 Spring Cloud的发展前景
2.1.3 Spring Cloud与Dubbo的对比
2.2 Spring Cloud的版本
2.2.1 Spring Cloud的版本发布规则
2.2.2 Spring Cloud的项目组成
2.2.3 Spring Cloud与Spring Boot版本之间的对应关系
2.3 Spring Cloud的核心组件和架构
2.3.1 Spring Cloud的架构
2.3.2 Spring Cloud的核心组件
2.4 本章小结
第3章 Spring Boot基础
3.1 Spring Boot概述
3.1.1 什么是Spring Boot
3.1.2 Spring、Spring Boot和Spring Cloud之间的关系
3.2 构建Spring Boot应用helloworld
3.2.1 创建第一个Spring Boot工程
3.2.2 创建RESTful API服务
3.3 Web开发基础
3.3.1 @Controller和@RestController
3.3.2 @RequestMapping
3.3.3 @ResponseBody
3.4 优雅的数据返回
3.4.1 为什么要统一返回值
3.4.2 统一数据返回
3.4.3 全局异常处理
3.5 系统配置文件
3.5.1 application.properties
3.5.2 application.yml
3.5.3 实战:自定义系统的启动图案
3.6 实战:实现系统多环境配置
3.6.1 多环境配置
3.6.2 系统环境切换
3.7 本章小结
3.8 本章练习
第4章 Eureka注册中心
4.1 Eureka简介
4.1.1 什么是注册中心
4.1.2 为什么需要注册中心
4.1.3 什么是Eureka
4.1.4 Eureka的架构原理
4.1.5 Eureka还是ZooKeeper
4.2 搭建Eureka注册中心
4.2.1 搭建Eureka注册中心
4.2.2 构建服务提供者
4.2.3 构建服务消费者
4.3 玩转Eureka
4.3.1 自我保护模式
4.3.2 如何优雅地停服
4.3.3 安全认证
4.3.4 健康检查
4.4 高可用Eureka注册中心(Eureka集群)
4.4.1 Eureka集群架构原理
4.4.2 搭建高可用的Eureka集群
4.5 本章小结
4.6 本章练习
第5章 Ribbon实现客户端负载均衡
5.1 Ribbon简介
5.1.1 什么是Ribbon
5.1.2 Ribbon的核心组件
5.1.3 Ribbon的工作原理
5.2 Ribbon的使用
5.2.1 使用Ribbon实现负载均衡
5.2.2 超时机制
5.2.3 重试机制
5.2.4 饥饿加载
5.3 Ribbon负载均衡策略
5.3.1 负载均衡算法
5.3.2 配置负载均衡算法
5.3.3 自定义负载均衡算法
5.4 本章小结
5.5 本章练习
第6章 Feign服务调用
6.1 Feign简介
6.1.1 Feign是什么
6.1.2 Feign用于解决什么问题
6.1.3 Feign的工作原理
6.2 Feign的使用
6.2.1 使用Feign调用服务
6.2.2 @FeignClient注解参数
6.2.3 Feign的自定义配置
6.3 Feign的拦截器、编解码器和异常处理
6.3.1 Feign的拦截器
6.3.2 Feign的编码器
6.3.3 Feign的解码器
6.3.4 Feign的异常处理
6.4 实际工程中的Feign实践
6.4.1 超时设置
6.4.2 开启日志
6.4.3 使用OKHttp3提升性能
6.4.4 开启GZIP压缩
6.5 本章小结
6.6 本章练习
第7章 Hystrix的限流、降级和熔断
7.1 Hystrix简介
7.1.1 什么是服务雪崩效应
7.1.2 什么是Hystrix
7.1.3 Hystrix的功能特性
7.1.4 什么是服务的限流、降级和熔断
7.2 Hystrix的设计原理
7.2.1 Hystrix的工作流程
7.2.2 Hystrix的熔断设计
7.2.3 Hystrix的隔离设计
7.2.4 Hystrix的超时机制设计
7.3 Hystrix的使用
7.3.1 Hystrix的常用注解
7.3.2 使用@HystrixCommand注解实现服务容错
7.3.3 Hystrix实现服务资源隔离
7.3.4 Hystrix与Feign结合使用
7.4 Hystrix Dashboard服务监控
7.4.1 Hystrix Dashboard简介
7.4.2 搭建Hystrix Dashboard监控服务
7.4.3 使用Hystrix Dashboard服务监控平台
7.5 本章小结
7.6 本章练习
第8章 构建微服务网关Spring Cloud Gateway
8.1 微服务网关简介
8.1.1 什么是微服务网关
8.1.2 为什么需要微服务网关
8.1.3 微服务网关的核心功能
8.1.4 微服务网关与传统API网关的区别
8.1.5 当前流行的微服务网关
8.2 使用Spring Cloud Gateway构建微服务网关
8.2.1 Spring Cloud Gateway简介
8.2.2 Spring Cloud Gateway的工作流程
8.2.3 搭建Spring Cloud Gateway微服务网关
8.2.4 使用Java Bean配置Gateway路由
8.3 路由和断言
8.3.1 服务名路由转发
8.3.2 断言
8.4 过滤器
8.4.1 什么是过滤器
8.4.2 使用过滤器实现权限验证
8.5 本章小结
8.6 本章练习
第9章 配置中心Spring Cloud Config
9.1 配置中心简介
9.1.1 什么是配置中心
9.1.2 配置中心的作用
9.1.3 为什么需要配置中心
9.1.4 当前流行的微服务配置中心
9.2 Spring Cloud Config简介
9.2.1 什么是Spring Cloud Config
9.2.2 Spring Cloud Config的工作原理
9.3 使用Spring Cloud Config构建配置中心
9.3.1 创建配置中心服务端
9.3.2 创建配置中心客户端
9.3.3 配置文件命名规则
9.4 实现配置动态刷新
9.4.1 技术方案
9.4.2 Spring Cloud Bus简介
9.4.3 使用Spring Cloud Bus实现配置动态刷新
9.5 本章小结
9.6 本章练习
第10章 微服务的统一认证和授权
10.1 微服务安全概览
10.1.1 认证和授权在微服务中的重要性
10.1.2 微服务下认证和授权的挑战
10.1.3 常见的认证和授权解决方案
10.2 OAuth 2.0简介
10.2.1 什么是OAuth 2.0
10.2.2 OAuth 2.0的使用场景
10.2.3 OAuth 2.0的基本流程
10.2.4 OAuth 2.0的授权模式
10.3 Spring Cloud如何实现认证和授权
10.3.1 实现方案
10.3.2 准备工作
10.3.3 搭建认证和授权服务
10.3.4 网关集成认证和授权
10.3.5 搭建订单管理服务
10.3.6 测试验证
10.4 本章小结
10.5 本章练习
第11章 集成Prometheus+Grafana监控服务
11.1 监控系统简介
11.1.1 什么是监控系统
11.1.2 监控系统的作用
11.1.3 监控系统的架构组件
11.1.4 当前流行的监控系统
11.2 使用Prometheus+Grafana搭建监控系统
11.2.1 Prometheus的组件结构
11.2.2 安装Prometheus Server
11.2.3 安装Node Exporter
11.2.4 安装Grafana
11.3 使用Prometheus监控Spring Boot的应用
11.3.1 如何监控Spring Boot应用
11.3.2 Spring Boot集成Micrometer实现数据采集
11.3.3 Prometheus收集应用数据并展示到Grafana
11.3.4 Spring Boot自定义监控指标
11.4 使用Grafana实现配置监控告警
11.4.1 告警的实现方式
11.4.2 配置Grafana告警
11.5 使用Alertmanager实现监控告警
11.5.1 Alertmanager的配置和安装
11.5.2 实现Alertmanager告警
11.6 本章小结
11.7 本章练习
第12章 微服务全链路跟踪SkyWalking
12.1 全链路追踪简介
12.1.1 什么是全链路追踪
12.1.2 为什么需要全链路追踪
12.1.3 全链路追踪的实现原理
12.1.4 当前流行的全链路追踪组件
12.2 SkyWalking简介
12.2.1 什么是SkyWalking
12.2.2 为什么要选择SkyWalking
12.2.3 SkyWalking的组件架构
12.3 搭建SkyWalking系统
12.3.1 搭建SkyWalking服务端
12.3.2 SkyWalking的使用及指标参数
12.4 Spring Boot项目如何接入SkyWalking
12.4.1 Agent简介
12.4.2 下载Agent
12.4.3 如何使用Agent
12.4.4 Spring Boot集成SkyWalking
12.5 本章小结
12.6 本章练习
第13章 使用Docker和Docker Compose实现容器化部署
13.1 Docker入门
13.1.1 Docker简介
13.1.2 Docker的常用命令
13.1.3 Spring Boot项目添加Docker支持
13.1.4 构建、运行Docker镜像
13.2 Docker Compose入门
13.2.1 Docker Compose简介
13.2.2 Docker Compose的安装
13.2.3 Docker Compose的常用命令
13.2.4 Docker Compose配置文件
13.3 使用Docker Compose编排Spring Cloud微服务
13.3.1 准备工作
13.3.2 打包Docker镜像
13.3.3 Docker Compose运行镜像
13.4 本章小结
13.5 本章练习
第14章 项目实战:从零开始实现图书管理系统
14.1 项目介绍
14.1.1 项目背景
14.1.2 项目目标
14.2 系统架构
14.2.1 技术选型
14.2.2 架构设计
14.2.3 功能模块说明
14.2.4 服务拆分和划分
14.3 搭建系统框架
14.3.1 项目结构
14.3.2 创建父工程
14.3.3 创建注册中心
14.3.4 创建微服务网关
14.3.5 创建配置中心
14.4 实现模块功能
14.4.1 创建认证和授权服务
14.4.2 创建系统管理服务
14.4.3 创建图书管理服务
14.4.4 创建借书管理服务
14.5 系统演示
14.6 本章小结
从零开始学SpringCloud微服务架构是2024年由清华大学出版社出版,作者章为忠 编著。
得书感谢您对《从零开始学SpringCloud微服务架构》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。