《Spring Cloud微服务架构实战》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:陈韶健著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2020
  • ISBN:9787121382864
  • 页数:312 页
图书介绍:

第一部分 架构 2

第1章 微服务架构与Spring Cloud 2

1.1微服务架构的特点 2

1.2微服务架构与整体式架构的区别 4

1.3微服务架构与SOA的比较 7

1.4微服务架构的优势 8

1.5为实施微服务架构做好准备 9

1.5.1思想观念 9

1.5.2团队管理 10

1.5.3自动化基础设施 10

1.6 Spring Cloud的优势 11

1.7 Spring Cloud工具套件介绍 12

1.8 Spring Cloud的版本说明 15

1.9小结 15

第2章 高并发微服务架构设计 16

2.1微服务总体架构设计 16

2.2自然的压力分解 18

2.3可弹性伸缩的集群环境 18

2.4高度的独立性设计 19

2.5 API的分层调用关系 19

2.6高可用的基础资源支持 20

2.7快速响应的自动化基础设施 21

2.8完善的监控体系 21

2.9微服务的安全保障 21

2.10小结 22

第3章 大型电商平台设计实例 23

3.1电商平台总体设计 23

3.1.1总体业务流程设计 23

3.1.2总体业务功能设计 25

3.2电商平台业务模型设计 25

3.2.1移动商城业务模型 26

3.2.2商家管理后台业务模型 26

3.2.3平台管理后台业务模型 27

3.3合理划分微服务 28

3.4创建REST API微服务 29

3.5创建Web UI微服务 30

3.5.1移动商城Web UI微服务 30

3.5.2商家管理后台的Web UI微服务 31

3.5.3平台管理后台Web UI微服务 31

3.6电商平台微服务体系架构 32

3.7电商平台微服务项目工程 33

3.8微服务项目数据库选型 33

3.9电商平台微服务项目代码库 34

3.10小结 34

第二部分 程序开发 36

第4章 开发环境准备 36

4.1选择Java SDK的版本 36

4.2下载InterlliJ IDEA 37

4.3下载及配置Git客户端 37

4.4创建Spring Cloud项目 38

4.5小结 39

第5章 微服务治理 40

5.1使用Consul创建注册中心 41

5.1.1服务注册与发现 42

5.1.2统一配置管理 44

5.2合理发挥断路器的作用 46

5.3如何实现有效的监控 47

5.3.1服务健康状态监控 47

5.3.2重大故障告警 49

5.3.3断路器仪表盘 49

5.4 Zipkin链路跟踪 52

5.5 ELK日志分析平台 55

5.5.1创建日志分析平台 55

5.5.2使用日志分析平台 56

5.6小结 57

第6章 类目管理微服务开发 58

6.1了解领域驱动设计 58

6.1.1 DDD的分层结构 59

6.1.2 DDD的基本元素 59

6.2 Spring Data JPA 59

6.2.1 Druid数据源配置 60

6.2.2 JPA初始化和基本配置 62

6.3实体建模 63

6.4查询对象设计 65

6.5数据持久化设计 66

6.6数据管理服务设计 68

6.7单元测试 70

6.8类目接口微服务开发 71

6.8.1 RESTful接口开发 71

6.8.2微服务接口调试 73

6.9基于RESTful的微服务接口调用 74

6.9.1声明式FeignClient设计 74

6.9.2断路器的使用 76

6.10类目管理Web应用微服务开发 76

6.10.1接口调用引用相关配置 77

6.10.2 Spring MVC控制器设计 77

6.11使用Thymeleaf模板 78

6.11.1 HTML页面设计 79

6.11.2统一风格模板设计 80

6.12总体测试 82

6.13有关项目打包与部署 83

6.14小结 84

第7章 库存管理与分布式文件系统 85

7.1基于MyBatis的数据库开发 85

7.1.1使用经过组装的MyBatis组件 85

7.1.2数据对象及其表结构定义 86

7.1.3 Mapper与SQL定制 88

7.2数据库服务组装 89

7.3单元测试 91

7.4库存微服务接口开发 92

7.4.1在主程序中支持MyBatis 92

7.4.2基于REST协议的控制器设计 93

7.5库存管理的Web应用开发 94

7.5.1公共对象的依赖引用 95

7.5.2商品分页数据调用设计 95

7.6 Web应用项目热部署设置 97

7.7使用分布式文件系统DFS 99

7.7.1分布式文件系统客户端开发 99

7.7.2商品图片上传设计 102

7.7.3富文本编辑器上传图片设计 106

7.7.4建立本地文件信息库 108

7.8总体测试 112

7.9小结 114

第8章 海量订单系统微服务开发 115

8.1使用MongoDB支持海量数据 115

8.1.1使用Mongo插件 115

8.1.2 MongoDB数据源相关配置 116

8.2订单文档建模 117

8.2.1订单及其明细数据 117

8.2.2订单状态枚举 119

8.3反应式MongoDB编程设计 121

8.3.1基于Spring Data的存储库接口设计 121

8.3.2动态分页查询设计 121

8.4 Mongo单元测试 123

8.5订单接口微服务开发 125

8.6订单的分布式事务管理 127

8.6.1订单取消的消息生成 127

8.6.2订单取消的库存变化处理 129

8.7订单管理后台微服务开发 131

8.7.1订单查询主页设计 131

8.7.2订单状态修改设计 133

8.8集成测试 135

8.9小结 137

第9章 移动商城的设计和开发 138

9.1移动商城首页设计 139

9.2商城的分类查询设计 143

9.3商品详情页设计 145

9.4用户下单功能实现 147

9.5商城的用户登录与账户切换设计 152

9.5.1用户登录设计 152

9.5.2切换账号设计 155

9.6订单查询设计 156

9.7集成测试 160

9.8小结 162

第10章 商家管理后台与SSO设计 163

10.1商家权限体系的设计及开发 164

10.1.1权限管理模型设计 165

10.1.2权限管理模型的持久化设计 170

10.1.3权限管理模型的服务封装 171

10.2商家管理微服务设计 175

10.2.1商家管理服务层单元测试 175

10.2.2商家服务的接口开发 178

10.3 SSO设计 183

10.3.1 SSO的基本配置 183

10.3.2 SSO第三方应用授权设计 184

10.3.3 SSO登录认证设计 186

10.3.4有关验证码的说明 191

10.3.5 SSO的主页设计 193

10.4 SSO客户端设计 196

10.4.1安全认证的项目管理配置 196

10.4.2安全认证项目的配置类 196

10.4.3权限管理验证设计 198

10.4.4客户端应用接入SSO 201

10.4.5有关跨站请求的相关设置 203

10.4.6根据用户权限自动分配菜单 203

10.5小结 206

第11章 平台管理后台与商家菜单资源管理 207

11.1平台管理后台访问控制设计 207

11.1.1实体建模 207

11.1.2为实体赋予行为 210

11.1.3数据访问服务设计 210

11.1.4单元测试 213

11.2平台管理后台的访问控制设计 214

11.2.1在访问控制中使用操作员 215

11.2.2平台管理后台的权限管理设计 215

11.3商家的注册管理设计 219

11.4商家权限及其菜单资源管理设计 222

11.4.1分类菜单管理设计 222

11.4.2模块菜单管理设计 224

11.4.3资源菜单管理设计 228

11.5商家角色管理设计 232

11.6小结 236

第三部分 运维部署 238

第12章 云服务环境与Docker部署工具 238

12.1虚拟机与基于Docker创建的容器 238

12.2安全可靠的云服务环境 239

12.3 Docker和docker-compose的下载与配置 240

12.3.1 Docker引擎的安装及使用 240

12.3.2 docker-compose的下载及配置 241

12.4使用Docker方式发布微服务 242

12.4.1镜像创建及其生成脚本 242

12.4.2服务发布与更新 243

12.5使用Docker部署日志分析平台 243

12.6基于Docker的高级部署工具 246

12.6.1私域镜像仓库 246

12.6.2 Docker Swarm 247

12.6.3 Kubernetes 249

12.7小结 253

第13章 可扩展分布式数据库集群的搭建 254

13.1 MySQL集群主机分配 255

13.2主从同步设置 256

13.3主主同步设置 259

13.4数据库代理中间件选择 261

13.5使用OneProxy实现读写分离设计 261

13.5.1安装OneProxy 262

13.5.2高可用读写分离配置 263

13.6 OneProxy分库分区设计 267

13.6.1按范围分库分表 268

13.6.2按值列表分库分表 268

13.6.3按散列算法分库分表 269

13.7双机热备设计 271

13.7.1 Real Server配置 272

13.7.2 LVS主机配置 273

13.7.3 LVS备用机配置 275

13.8小结 277

第14章 高可用分布式文件系统的组建 278

14.1 FastDFS架构 278

14.2 FastDFS的安装 279

14.3跟踪服务器配置 280

14.4存储节点配置 281

14.5上传文件测试 282

14.6 Nginx的安装及负载均衡配置 283

14.6.1在跟踪器上安装Nginx 283

14.6.2在存储节点上安装Nginx 285

14.7开机启动 287

14.7.1开机启动Tracker 287

14.7.2开机启动Storage 289

14.7.3开机启动Nginx 291

14.8小结 293

第15章 使用Jenkins实现自动化构建 294

15.1持续交付工作流程 295

15.2 Jenkins的安装 296

15.3 Jenkins的基本配置 298

15.4 Jenkins的自动部署实例 300

15.4.1创建任务 300

15.4.2任务配置 301

15.4.3执行任务 305

15.5小结 309

后记 310

参考文献 311