注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络操作系统Spring Boot微服务实战(第2版)

Spring Boot微服务实战(第2版)

Spring Boot微服务实战(第2版)

定 价:¥128.00

作 者: [美]莫伊塞斯·马塞罗·加西亚(Moisés Macero García) 著,甘明 王超 庄晓敏 石瑶 译
出版社: 清华大学出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787302624745 出版时间: 2023-03-01 包装: 平装-胶订
开本: 16开 页数: 字数:  

内容简介

  使用Spring Boot框架构建基于Java的微服务架构,将应用程序从小型单体架构蜕变为由多个服务组成的事件驱动架构。这个新版本围绕服务发现、负载均衡、路由、集中式日志、按环境配置和容器化等知识点,循序渐进地讲述微服务架构、测试驱动的开发和分布式系统中的常见模式。 本书介绍Spring Boot**版本新增的功能,包括支持**版本的Java SE、使用JUnit 5进行测试、更新用于服务发现和负载均衡的Spring Cloud工具、使用云原生构建包构建Docker映像、提供基本的集中式日志解决方案、使用Sleuth实现E2E可追溯性、使用Consul进行集中式配置、依赖项升级、支持Spring Data Neumann等。 作者Moisés使用紧贴实用的方法来解释使用这种软件架构的好处,而不是只偏重理论概念,介绍了计算机编程中的一些**进技术。你将专注于学习关键技术,从开发小可行性产品入手,并保持演进的灵活性。主要内容使用Spring Boot构建微服务 ?发现分布式系统的架构模式,如异步处理、终一致性、弹性、可扩展性等在RabbitMQ中使用事件驱动的架构和消息传递使用Consul进行服务发现,使用Spring Cloud Load Balancer进行负载均衡使用Spring Cloud Gateway路由请求使用Spring Cloud Consul按环境进行灵活配置使用Sleuth和集中式日志记录从头到尾跟踪每个请求将微服务作为Docker容器部署到任何需要之处使用Docker Compose启动微服务架构中的所有组件

作者简介

  Moisés Macero García从小就对软件开发兴趣浓厚,当时他在自己的ZX Spectrum上玩Basic。在他的职业生涯中,Moisés经常为小型和大型项目以及自己的初创公司进行软件开发和设计。他喜欢使软件问题变得简单,喜欢在团队中工作,这样不仅可以指导他人,而且可以向他们学习。Moisés是thepracticaldeveloper.com博客的作者,他在其中分享了有关技术挑战的解决方案、指南,以及IT 行业工作方法的心得。他还为需要实用软件工程方法的公司组织研讨会。在业余时间,他喜欢旅行和远足。可通过Twitter账户@moises_macero联系

图书目录

第1章  设置场景 1
1.1  读者对象 2
1.2  本书与其他书籍和指南的
区别 2
1.2.1  学习:一个增量过程 2
1.2.2  本书是指南还是图书 3
1.3  从基础到高级主题 3
1.3.1  以Spring Boot为框架是
更专业的方式 4
1.3.2  测试驱动的开发 4
1.3.3  微服务 4
1.3.4  由事件驱动的系统 5
1.3.5  非功能性需求 5
1.4  在线内容 5
1.5  本章小结 5
第2章  基本概念 7
2.1  Spring 7
2.2  Spring Boot 8
2.3  Lombok和Java 9
2.4  测试的基础知识 11
2.4.1  测试驱动的开发 12
2.4.2  行为驱动的开发 12
2.4.3  JUnit 13
2.4.4  Mockito 13
2.4.5  AssertJ 16
2.4.6  在Spring Boot中进行测试 16
2.5  日志记录 17
2.6  本章小结 18
第3章  一个基础的Spring Boot
应用程序 20
3.1  搭建开发环境 21
3.2  Web应用的框架 21
3.3  Spring Boot自动配置 24
3.4  三层架构 28
3.5  域建模 30
3.5.1  域定义和域驱动设计 30
3.5.2  域类 31
3.6  业务逻辑 33
3.6.1  功能 33
3.6.2  随机的Challenge 33
3.6.3  验证Attempt 37
3.7  表示层 40
3.7.1  REST 40
3.7.2  Spring Boot和REST API 41
3.7.3  设计API 42
3.7.4  个控制器 43
3.7.5  自动序列化的工作方式 44
3.7.6  使用Spring Boot测试控制器 47
3.8  本章小结 56
第4章  用React构建微前端 58
4.1  快速了解React和Node 59
4.2  搭建开发环境 59
4.3  React框架 60
4.4  JavaScript客户端 61
4.5  Challenge组件 63
4.5.1  组件的主要结构 65
4.5.2  渲染 67
4.5.3  与应用程序集成 69
4.6  次运行前端 69
4.7  调试 70
4.8  将CORS配置添加到
Spring Boot应用 71
4.9  使用应用程序 72
4.10  部署React 应用程序 73
4.11  本章小结 75
第5章  数据层 77
5.1  数据模型 78
5.2  选择数据库 80
5.2.1  SQL与NoSQL 80
5.2.2  H2、Hibernate和JPA 81
5.3  Spring Boot Data JPA 81
5.3.1  依赖关系和自动配置 81
5.3.2  Spring Boot Data JPA技术栈 84
5.3.3  数据源(自动)配置 85
5.4  实体 86
5.5  存储库 90
5.6  存储用户和尝试 92
5.7  显示近的尝试 96
5.7.1  服务层 97
5.7.2  控制器层 98
5.7.3  用户界面 102
5.8  体验新功能 107
5.9  本章小结 109
第6章  从微服务开始 110
6.1  小型单体系统 110
6.2  为什么选择小型单体
系统 110
6.2.1  微服务与生俱来的问题 111
6.2.2  小型单体系统适用于小团队 111
6.2.3  拥抱重构 112
6.3  规划未来拆分的小型单体
应用程序 112
6.4  新需求和游戏化 113
6.5  转向微服务 115
6.5.1  独立的工作流程 116
6.5.2  水平可伸缩性 116
6.5.3  细粒度的非功能需求 117
6.5.4  其他优势 118
6.5.5  劣势 118
6.6  架构概述 119
6.7  设计和实现新服务 121
6.7.1  界面 121
6.7.2  Gamification的Spring Boot
框架 121
6.7.3  域 122
6.7.4  服务 126
6.7.5  数据 135
6.7.6  控制器 137
6.7.7  配置 138
6.7.8  微服务Multiplication的
变动 140
6.7.9  用户界面 144
6.8  玩转系统 149
6.9  容错能力 150
6.10  未来的挑战 151
6.10.1  紧密耦合 152
6.10.2  同步接口与终一致性 152
6.10.3  事务 156
6.10.4  公开API 157
6.11  本章小结 157
第7章  事件驱动的架构 159
7.1  核心概念 159
7.1.1  消息代理 159
7.1.2  事件和消息 161
7.1.3  探讨事件 162
7.1.4  异步消息传递 164
7.1.5  反应式系统 166
7.2  事件驱动的利弊 167
7.3  消息传递模式 168
7.3.1  发布-订阅 169
7.3.2  工作队列 169
7.3.3  过滤器 170
7.3.4  数据持久性 170
7.4  消息传递代理协议、标准
和工具 170
7.5  AMQP和RabbitMQ 171
7.5.1  总体描述 171
7.5.2  交换类型和路由 172
7.5.3  消息确认和拒绝 174
7.6  设置RabbitMQ 174
7.7  Spring AMQP和
Spring Boot 176
7.8  解决方案设计 176
7.8.1  添加AMQP启动程序 178
7.8.2  Multiplication中的事件发布 179
7.8.3  Gamification作为订阅者 184
7.9  场景分析 191
7.9.1  快乐流 191
7.9.2  Gamification变得不可用 196
7.9.3  消息代理变得不可用 198
7.9.4  事务性 199
7.9.5  扩展微服务 201
7.10  本章小结 205
第8章  微服务架构中的常见
模式 207
8.1  网关 207
8.1.1  Spring Cloud网关 209
8.1.2  网关微服务 211
8.1.3  其他项目的变更 214
8.1.4  运行Gateway微服务 216
8.1.5  下一步 217
8.2  运行状况 217
8.2.1  Spring Boot Actuator 218
8.2.2  在微服务中包含Actuator 220
8.3  服务发现和负载均衡 222
8.3.1  Consul 226
8.3.2  Spring Cloud Consul 227
8.3.3  Spring Cloud负载均衡器 233
8.3.4  网关中的服务发现和
负载均衡 235
8.3.5  使用服务发现和负载均衡 239
8.4  每种环境的配置 245
8.4.1  Consul中的配置 247
8.4.2  Spring Cloud Consul Config 248
8.4.3  实现集中配置 250
8.4.4  集中配置实践 253
8.5  集中式日志 259
8.5.1  日志聚合模式 259
8.5.2  日志集中化的简单解决方案 260
8.5.3  使用日志并输出 264
8.6  分布式跟踪 268
8.6.1  Spring Cloud Sleuth 269
8.6.2  实现分布式跟踪 270
8.7  容器化 272
8.7.1  Docker 274
8.7.2  Spring Boot和Buildpacks 277
8.7.3  在Docker中运行系统 278
8.7.4  Docker化微服务 279
8.7.5  Docker化UI 280
8.7.6  Docker化配置导入器 280
8.7.7  Docker Compose 282
8.7.8  使用Docker扩展系统 293
8.7.9  共享Docker映像 295
8.8  平台和云原生微服务 298
8.8.1  容器平台 299
8.8.2  应用程序平台 300
8.8.3  云提供商 300
8.8.4  做出决定 301
8.8.5  云原生微服务 302
8.9  本章小结 302
后记 304
 
 
 

本目录推荐