书籍详情
《从零开始学Spring Cloud微服务架构》[88M]百度网盘|亲测有效|pdf下载
  • 从零开始学Spring Cloud微服务架构

  • 出版社:清华大学出版社
  • 作者:章为忠 著
  • 出版时间:2024-11-01
  • 热度:4981
  • 上架时间:2025-01-04 08:18:29
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

产品特色

编辑推荐

《从零开始学Spring Cloud微服务架构》从企业的真实需求出发,理论结合实际,深入讲解了Spring Cloud微服务和分布式系统的理论知识,同时涵盖了微服务架构中的DevOps实践。从实际案例出发,全面系统地讲解了Spring Cloud微服务系统的搭建、部署、运维等微服务架构的全过程。

内容简介

《从零开始学Spring Cloud微服务架构》专注于介绍Spring Cloud微服务架构,内容涵盖构建和应用微服务架构所需的关键知识和技术。《从零开始学Spring Cloud微服务架构》共分为14章。第1~3章介绍微服务架构的发展历程、Spring Cloud概述以及使用Spring Boot构建微服务应用的实战技巧;第4~7章重点讲解Eureka服务注册与发现,Ribbon客户端负载均衡和Feign服务调用,Hystrix的限流、降级和熔断,帮助读者理解和应用微服务架构中的核心组件;第8、9章深入研究微服务网关Spring Cloud Gateway和微服务配置中心Spring Cloud Config的实现;第10~12章介绍微服务架构下的统一认证和授权、微服务全链路跟踪SkyWalking,并展示如何集成Prometheus+Grafana实现微服务监控的方法和技巧;第13、14章引导读者使用Docker和Docker Compose实现微服务容器化部署,并通过项目实战展示如何使用Spring Cloud构建图书管理系统。

《从零开始学Spring Cloud微服务架构》适合希望学习Spring Cloud微服务、分布式系统开发与架构的开发人员和架构师阅读,同时也可以作为计算机科学、软件工程等相关专业的学生和研究人员的参考书。


作者简介

章为忠

软件工程专业,PMP认证及信息系统项目管理师,在软件开发与系统架构领域潜心耕耘十余载。热衷于技术架构的探索,对技术领域满怀激情,特别是在软件开发与架构设计方面沉淀了深厚造诣。著有《Spring Boot 从入门到实战》一书。曾在多家知名企业任职,参与了众多具有挑战性的项目,为企业攻克了一系列关键技术难题。现任职于某知名上市公司,担任技术经理一职。


目录


第1章 微服务的前世今生 1

1.1 软件架构的演化之路 1

1.2 什么是微服务 4

1.3 为什么需要微服务 7

1.4 微服务与单体、SOA的区别 9

1.5 什么场景适合微服务 11

1.6 微服务架构的形态 11

1.7 本章小结 15

第2章 Spring Cloud概述 16

2.1 Spring Cloud简介 16

2.1.1 什么是Spring Cloud 16

2.1.2 Spring Cloud的发展前景 17

2.1.3 Spring Cloud与Dubbo的对比 18

2.2 Spring Cloud的版本 21

2.2.1 Spring Cloud的版本发布规则 21

2.2.2 Spring Cloud的项目组成 22

2.2.3 Spring Cloud与Spring Boot版本之间的对应关系 23

2.3 Spring Cloud的核心组件和架构 24

2.3.1 Spring Cloud的架构 24

2.3.2 Spring Cloud的核心组件 25

2.4 本章小结 28

第3章 Spring Boot基础 29

3.1 Spring Boot概述 29

3.1.1 什么是Spring Boot 29

3.1.2 Spring、Spring Boot和Spring Cloud之间的关系 30

3.2 构建Spring Boot应用helloworld 31

3.2.1 创建第一个Spring Boot工程 32

3.2.2 创建RESTful API服务 33

3.3 Web开发基础 35

3.3.1 @Controller和@RestController 35

3.3.2 @RequestMapping 37

3.3.3 @ResponseBody 37

3.4 优雅的数据返回 38

3.4.1 为什么要统一返回值 38

3.4.2 统一数据返回 39

3.4.3 全局异常处理 44

3.5 系统配置文件 46

3.5.1 application.properties 46

3.5.2 application.yml 48

3.5.3 实战:自定义系统的启动图案 50

3.6 实战:实现系统多环境配置 52

3.6.1 多环境配置 52

3.6.2 系统环境切换 53

3.7 本章小结 55

3.8 本章练习 55

第4章 Eureka注册中心 56

4.1 Eureka简介 56

4.1.1 什么是注册中心 56

4.1.2 为什么需要注册中心 57

4.1.3 什么是Eureka 58

4.1.4 Eureka的架构原理 58

4.1.5 Eureka还是ZooKeeper 60

4.2 搭建Eureka注册中心 63

4.2.1 搭建Eureka注册中心 64

4.2.2 构建服务提供者 66

4.2.3 构建服务消费者 68

4.3 玩转Eureka 71

4.3.1 自我保护模式 71

4.3.2 如何优雅地停服 73

4.3.3 安全认证 74

4.3.4 健康检查 75

4.4 高可用Eureka注册中心(Eureka集群) 78

4.4.1 Eureka集群架构原理 78

4.4.2 搭建高可用的Eureka集群 79

4.5 本章小结 81

4.6 本章练习 81

第5章 Ribbon实现客户端负载均衡 82

5.1 Ribbon简介 82

5.1.1 什么是Ribbon 82

5.1.2 Ribbon的核心组件 84

5.1.3 Ribbon的工作原理 84

5.2 Ribbon的使用 85

5.2.1 使用Ribbon实现负载均衡 85

5.2.2 超时机制 87

5.2.3 重试机制 88

5.2.4 饥饿加载 90

5.3 Ribbon负载均衡策略 90

5.3.1 负载均衡算法 91

5.3.2 配置负载均衡算法 92

5.3.3 自定义负载均衡算法 93

5.4 本章小结 94

5.5 本章练习 95

第6章 Feign服务调用 96

6.1 Feign简介 96

6.1.1 Feign是什么 96

6.1.2 Feign用于解决什么问题 97

6.1.3 Feign的工作原理 98

6.2 Feign的使用 99

6.2.1 使用Feign调用服务 99

6.2.2 @FeignClient注解参数 101

6.2.3 Feign的自定义配置 102

6.3 Feign的拦截器、编解码器和异常处理 103

6.3.1 Feign的拦截器 103

6.3.2 Feign的编码器 104

6.3.3 Feign的解码器 104

6.3.4 Feign的异常处理 105

6.4 实际工程中的Feign实践 105

6.4.1 超时设置 105

6.4.2 开启日志 106

6.4.3 使用OKHttp3提升性能 106

6.4.4 开启GZIP压缩 107

6.5 本章小结 107

6.6 本章练习 108

第7章 Hystrix的限流、降级和熔断 109

7.1 Hystrix简介 109

7.1.1 什么是服务雪崩效应 109

7.1.2 什么是Hystrix 110

7.1.3 Hystrix的功能特性 111

7.1.4 什么是服务的限流、降级和熔断 112

7.2 Hystrix的设计原理 112

7.2.1 Hystrix的工作流程 112

7.2.2 Hystrix的熔断设计 114

7.2.3 Hystrix的隔离设计 114

7.2.4 Hystrix的超时机制设计 115

7.3 Hystrix的使用 116

7.3.1 Hystrix的常用注解 116

7.3.2 使用@HystrixCommand注解实现服务容错 118

7.3.3 Hystrix实现服务资源隔离 120

7.3.4 Hystrix与Feign结合使用 121

7.4 Hystrix Dashboard服务监控 123

7.4.1 Hystrix Dashboard简介 123

7.4.2 搭建Hystrix Dashboard监控服务 124

7.4.3 使用Hystrix Dashboard服务监控平台 125

7.5 本章小结 127

7.6 本章练习 127

第8章 构建微服务网关Spring Cloud Gateway 128

8.1 微服务网关简介 128

8.1.1 什么是微服务网关 128

8.1.2 为什么需要微服务网关 129

8.1.3 微服务网关的核心功能 130

8.1.4 微服务网关与传统API网关的区别 131

8.1.5 当前流行的微服务网关 131

8.2 使用Spring Cloud Gateway构建微服务网关 133

8.2.1 Spring Cloud Gateway简介 133

8.2.2 Spring Cloud Gateway的工作流程 134

8.2.3 搭建Spring Cloud Gateway微服务网关 135

8.2.4 使用Java Bean配置Gateway路由 137

8.3 路由和断言 137

8.3.1 服务名路由转发 137

8.3.2 断言 138

8.4 过滤器 139

8.4.1 什么是过滤器 139

8.4.2 使用过滤器实现权限验证 139

8.5 本章小结 141

8.6 本章练习 142

第9章 配置中心Spring Cloud Config 143

9.1 配置中心简介 143

9.1.1 什么是配置中心 143

9.1.2 配置中心的作用 144

9.1.3 为什么需要配置中心 145

9.1.4 当前流行的微服务配置中心 146

9.2 Spring Cloud Config简介 147

9.2.1 什么是Spring Cloud Config 147

9.2.2 Spring Cloud Config的工作原理 148

9.3 使用Spring Cloud Config构建配置中心 149

9.3.1 创建配置中心服务端 149

9.3.2 创建配置中心客户端 152

9.3.3 配置文件命名规则 153

9.4 实现配置动态刷新 154

9.4.1 技术方案 155

9.4.2 Spring Cloud Bus简介 155

9.4.3 使用Spring Cloud Bus实现配置动态刷新 156

9.5 本章小结 158

9.6 本章练习 158

第10章 微服务的统一认证和授权 159

10.1 微服务安全概览 159

10.1.1 认证和授权在微服务中的重要性 159

10.1.2 微服务下认证和授权的挑战 160

10.1.3 常见的认证和授权解决方案 161

10.2 OAuth 2.0简介 165

10.2.1 什么是OAuth 2.0 165

10.2.2 OAuth 2.0的使用场景 166

10.2.3 OAuth 2.0的基本流程 167

10.2.4 OAuth 2.0的授权模式 168

10.3 Spring Cloud如何实现认证和授权 168

10.3.1 实现方案 168

10.3.2 准备工作 170

10.3.3 搭建认证和授权服务 170

10.3.4 网关集成认证和授权 175

10.3.5 搭建订单管理服务 179

10.3.6 测试验证 181

10.4 本章小结 184

10.5 本章练习 184

第11章 集成Prometheus+Grafana监控服务 185

11.1 监控系统简介 185

11.1.1 什么是监控系统 185

11.1.2 监控系统的作用 185

11.1.3 监控系统的架构组件 186

11.1.4 当前流行的监控系统 187

11.2 使用Prometheus+Grafana搭建监控系统 190

11.2.1 Prometheus的组件结构 190

11.2.2 安装Prometheus Server 191

11.2.3 安装Node Exporter 191

11.2.4 安装Grafana 194

11.3 使用Prometheus监控Spring Boot的应用 198

11.3.1 如何监控Spring Boot应用 198

11.3.2 Spring Boot集成Micrometer实现数据采集 199

11.3.3 Prometheus收集应用数据并展示到Grafana 200

11.3.4 Spring Boot自定义监控指标 204

11.4 使用Grafana实现配置监控告警 206

11.4.1 告警的实现方式 206

11.4.2 配置Grafana告警 207

11.5 使用Alertmanager实现监控告警 211

11.5.1 Alertmanager的配置和安装 211

11.5.2 实现Alertmanager告警 213

11.6 本章小结 216

11.7 本章练习 216

第12章 微服务全链路跟踪SkyWalking 217

12.1 全链路追踪简介 217

12.1.1 什么是全链路追踪 217

12.1.2 为什么需要全链路追踪 218

12.1.3 全链路追踪的实现原理 219

12.1.4 当前流行的全链路追踪组件 220

12.2 SkyWalking简介 223

12.2.1 什么是SkyWalking 223

12.2.2 为什么要选择SkyWalking 224

12.2.3 SkyWalking的组件架构 225

12.3 搭建SkyWalking系统 225

12.3.1 搭建SkyWalking服务端 226

12.3.2 SkyWalking的使用及指标参数 228

12.4 Spring Boot项目如何接入SkyWalking 236

12.4.1 Agent简介 236

12.4.2 下载Agent 237

12.4.3 如何使用Agent 238

12.4.4 Spring Boot集成SkyWalking 239

12.5 本章小结 240

12.6 本章练习 241

第13章 使用Docker和Docker Compose实现容器化部署 242

13.1 Docker入门 242

13.1.1 Docker简介 242

13.1.2 Docker的常用命令 244

13.1.3 Spring Boot项目添加Docker支持 246

13.1.4 构建、运行Docker镜像 248

13.2 Docker Compose入门 249

13.2.1 Docker Compose简介 250

13.2.2 Docker Compose的安装 250

13.2.3 Docker Compose的常用命令 251

13.2.4 Docker Compose配置文件 252

13.3 使用Docker Compose编排Spring Cloud微服务 254

13.3.1 准备工作 254

13.3.2 打包Docker镜像 254

13.3.3 Docker Compose运行镜像 255

13.4 本章小结 257

13.5 本章练习 257

第14章 项目实战:从零开始实现图书管理系统 258

14.1 项目介绍 258

14.1.1 项目背景 258

14.1.2 项目目标 259

14.2 系统架构 259

14.2.1 技术选型 259

14.2.2 架构设计 260

14.2.3 功能模块说明 260

14.2.4 服务拆分和划分 261

14.3 搭建系统框架 261

14.3.1 项目结构 262

14.3.2 创建父工程 262

14.3.3 创建注册中心 264

14.3.4 创建微服务网关 265

14.3.5 创建配置中心 266

14.4 实现模块功能 268

14.4.1 创建认证和授权服务 268

14.4.2 创建系统管理服务 272

14.4.3 创建图书管理服务 274

14.4.4 创建借书管理服务 276

14.5 系统演示 279

14.6 本章小结 282


前言/序言


随着互联网的快速发展和业务需求的不断变化,微服务架构已成为构建高效、可扩展应用的关键技术之一。在构建微服务应用方面,Spring?Cloud为开发者提供了一套完整的解决方案,帮助他们构建和管理复杂的分布式系统。

本书旨在帮助读者全面了解和应用Spring Cloud微服务架构,成为熟练的微服务开发者。全书共分为14章,每章各介绍了构建和应用微服务架构所需的关键知识和技术。

第1章:回顾微服务架构的发展历程,为读者提供全面的背景了解。

第2章:对Spring?Cloud进行概述,介绍其核心概念和特点,为读者打下坚实的基础。

第3章:通过Spring?Boot实战,深入了解如何使用Spring?Boot构建微服务应用。

第4章:重点介绍Eureka服务注册与发现,讲解如何实现服务的自动注册和发现。

第5章和第6章:分别介绍Ribbon客户端负载均衡和Feign服务调用,帮助读者理解客户端负载均衡和服务调用的实现方法。

第7章:深入研究Hystrix,探讨如何实现限流、降级和熔断,以确保系统的稳定性和可靠性。

第8章:介绍如何构建微服务网关Spring?Cloud?Gateway,实现对微服务的统一访问和路由。

第9章:重点讲解微服务配置中心Spring?Cloud?Config,帮助读者了解如何集中管理和动态更新微服务的配置。

第10章:探讨微服务架构下的统一认证和授权,确保系统的安全性。

第11章和第12章:介绍微服务全链路跟踪SkyWalking和集成Prometheus+Grafana实现微服务监控,帮助读者实现对微服务的全面监控和性能优化。

第13章:引导读者使用Docker和Docker?Compose实现微服务容器化部署,提高部署的灵活性和可移植性。

第14章:通过一个实际项目展示如何使用Spring?Cloud构建图书管理系统微服务系统。

通过阅读本书,读者将全面掌握Spring?Cloud微服务架构的核心概念、关键技术和实际应用。无论是初学者还是有一定经验的开发者,都能够从中获得宝贵的知识和实践经验,作为构建高效、可扩展的微服务架构的指南和支持。

最后,我要感谢所有参与本书撰写和出版的人员,他们的辛勤工作和专业知识使得本书得以顺利完成。希望本书能够成为您学习和应用Spring?Cloud微服务架构的有力工具,帮助您在微服务领域取得更大的成功。

祝您阅读愉快,愿本书能够成为您在学习和实践Spring?Cloud微服务架构过程中的良师益友!

配套资源下载

示例源代码 参考答案 PPT课件


编 者

2024年9月28日



相关推荐