Spring Cloud微服务技术

Spring Cloud微服务技术 教材名称: Spring Cloud微服务技术
ISBN号: 978-7-89535-411-1 作者: 赵璘 王欢
字数: 394千字 规格:
印制时间: 2025-02-01 出版日期: 2025-02-01
定价: 45 元 样章下载: Spring Cloud微服务技术.pdf
购买地址:

《Spring Cloud微服务技术》是面向有Java基础的读者的专业教材,全面介绍了微服务架构的原理和技术组件,从基础搭建到电商项目实践,内容丰富结构清晰。教材紧跟互联网技术发展,围绕Spring Cloud框架,结合实际经验,阐述了微服务的发展历程和核心概念,如服务治理、调用、网关、容错、链路追踪等,并提供了理论与实践操作指导,是掌握微服务架构技术的理想之选。
本教材共11章,各章的具体内容如下:
第1章 微服务介绍。主要讲述介绍单体应用架构、分布式架构、SOA架构和微服务架构的概念和特点。探讨微服务架构的优势和挑战,以及常见的微服务解决方案,如Netflix、Spring Cloud、Spring Cloud Alibaba和Dubbo+ZooKeeper。
第2章 微服务项目基础搭建。介绍微服务项目的基础环境,包括Java、Maven、IntelliJ IDEA、MySQL和MyBatisPlus。指导读者使用Spring Cloud Alibaba和Spring Boot搭建电商微服务项目,包括公共模块、用户模块、商品模块和订单模块。展示如何使用RestTemplate进行简单的微服务调用。
第3章 服务治理。介绍服务治理的概念和重要性,以及服务注册与发现的基本原理。比较常见的服务注册中心,如Zookeeper、Eureka、Consul和Nacos。重点介绍Nacos作为服务注册中心的使用方法,包括环境搭建、服务注册和发现,以及服务调用。
第4章 负载均衡与服务调用。介绍负载均衡的概念和作用,以及常见的负载均衡策略,如轮询、随机和基于权重的负载均衡。介绍Spring Cloud LoadBalancer组件的特点和功能,以及如何使用它来实现负载均衡。介绍OpenFeign服务调用框架,以及如何使用它简化微服务间的HTTP通信。展示如何自定义负载均衡策略,以及使用LoadBalancer组件和OpenFeign进行服务调用。
第5章 服务容错。介绍雪崩问题的本质和影响,以及解决雪崩问题的常用方法和策略,如超时处理、服务隔离、熔断降级和流量控制。比较常见的服务保护技术,如Hystrix、Resilience4j和Sentinel。重点介绍Sentinel框架的基本概念、核心功能和工作原理,包括流量控制规则、隔离熔断机制、授权规则和规则持久化。展示如何使用Sentinel实现限流、熔断、降级和授权,以及进行规则持久化。
第6章 服务网关。介绍服务网关的概念和作用,以及常见的服务网关工具,如Nginx、Zuul和Spring Cloud Gateway。重点介绍Spring Cloud Gateway的核心架构,包括路由管理、断言Predicate和过滤器Filter。展示如何使用断言Predicate进行路由匹配和条件判断,以及如何编写和配置自定义过滤器。介绍网关限流的重要性,以及如何使用Spring Cloud Gateway实现基于网关的限流策略。
第7章 链路追踪。介绍链路追踪的概念和重要性,以及常见的链路追踪技术,如Zipkin、Pinpoint和SkyWalking。重点介绍Spring Cloud Sleuth和Zipkin的集成方法,以及如何使用它们进行链路追踪。展示如何使用Zipkin进行链路数据持久化。
第8章 服务配置。介绍服务配置中心的概念和重要性,以及常用的服务配置中心方案,如Apollo、Disconf、Spring Cloud Config和Nacos Config。重点介绍Nacos Config服务配置中心的配置方法,以及如何使用它实现自动刷新配置文件。展示如何使用Nacos Config实现配置共享。
第9章 消息队列。介绍消息队列的概念和作用,以及常见的消息队列工具,如ActiveMQ、Kafka、RocketMQ和RabbitMQ。重点介绍RocketMQ的架构和原理,以及如何使用它进行消息发送和接收。展示如何使用RocketMQ实现流量削峰、应用解耦和异步通信。
第10章 分布式事务。介绍事务的概念和分类,以及分布式事务的挑战和解决方案,如全局事务、可靠消息服务、最大努力通知、TCC事务和本地消息服务。重点介绍Seata分布式事务解决方案,以及如何使用它进行事务控制。展示如何使用Seata实现分布式事务控制,以及处理异常情况。
第11章 电商项目案例。以电商项目为例,将前面学习的微服务组件进行综合应用。展示如何分析项目需求、设计微服务架构、搭建项目工程、实现代码和进行测试验证。通过电商项目案例,帮助读者理解Spring Cloud Alibaba架构的搭建和运行。
第1章微服务介绍1
学习目标1
知识导图1
1.1理论储备2
1.1.1系统架构演变2
1.1.2微服务架构6
1.2本章小结12
第2章微服务项目基础搭建13
学习目标13
知识导图13
2.1理论储备14
2.1.1基本开发环境14
2.1.2微服务技术栈选型14
2.2实操演练16
2.2.1项目模块设计16
2.2.2项目模块创建16
2.2.3简单微服务调用36
2.3本章小结40
第3章服务治理41
学习目标41
知识导图41
3.1理论储备41
3.1.1服务治理介绍41
3.1.2服务注册与发现42
3.1.3常见服务注册中心43
3.1.4Nacos介绍43
3.2实操演练44
3.2.1Nacos环境搭建44
3.2.2将商品微服务注册到Nacos中47
3.2.3将订单微服务注册到Nacos中48
3.2.4实现从Nacos中获取服务地址进行微服务调用49
3.3本章小结49
第4章负载均衡与服务调用51
学习目标51
知识导图51
4.1理论储备51
4.1.1负载均衡介绍51
4.1.2LoadBalancer介绍53
4.1.3服务调用与OpenFeign54
4.2实操演练55
4.2.1自定义实现负载均衡55
4.2.2基于LoadBalancer组件实现负载均衡57
4.2.3自定义LoadBalancer负载均衡策略58
4.2.4基于Nacos权重负载均衡59
4.2.5基于OpenFeign实现服务调用61
4.3本章小结63
第5章服务容错64
学习目标64
知识导图65
5.1理论储备65
5.1.1雪崩问题及解决方案65
5.1.2服务保护技术及对比67
5.1.3Sentinel介绍68
5.1.4Sentinel限流规则69
5.1.5Sentinel隔离与熔断降级72
5.1.6授权规则76
5.1.7规则持久化78
5.2实操演练79
5.2.1Sentinel安装与项目整合79
5.2.2Sentinel限流规则实操81
5.2.3Sentinel隔离与降级实操100
5.2.4Sentinel授权规则实操112
5.2.5Sentinel规则持久化实战119
5.3本章小结123
第6章服务网关124
学习目标124
知识导图124
6.1理论储备125
6.1.1服务网关介绍125
6.1.2Spring Cloud Gateway介绍125
6.1.3Spring Cloud Gateway核心架构125
6.1.4断言Predicate127
6.1.5过滤器Filter129
6.1.6网关限流131
6.2实操演练132
6.2.1Spring Cloud Gateway集成132
6.2.2断言实操135
6.2.3过滤器实操138
6.2.4网关限流实操142
6.3本章小结148
第7章链路追踪149
学习目标149
知识导图149
7.1理论储备150
7.1.1链路追踪介绍150
7.1.2Sleuth介绍151
7.1.3Zipkin介绍152
7.2实操演练153
7.2.1Sleuth实操入门153
7.2.2Zipkin集成155
7.3本章小结160
第8章服务配置161
学习目标161
知识导图161
8.1理论储备162
8.1.1服务配置中心介绍162
8.1.2常见配置中心162
8.1.3Nacos 的几个概念163
8.2实操演练164
8.2.1Nacos Config配置入门实操164
8.2.2Nacos Config服务配置实操168
8.2.3配置共享170
8.3本章小结172第9章消息队列173
学习目标173
知识导图173
9.1理论储备174
9.1.1消息队列介绍174
9.1.2常见消息队列175
9.1.3RocketMQ架构175
9.2实操演练177
9.2.1使用RocketMQ进行消息发送和接收177
9.2.2RocketMQ控制台安装179
9.2.3RocketMQ发送和接收消息案例181
9.2.4发送不同类型的消息185
9.3本章小结189
第10章分布式事务190
学习目标190
知识导图190
10.1理论储备191
10.1.1事务及事务的分类191
10.1.2分布式事务193
10.1.3分布式事务解决方案194
10.1.4Seata介绍199
10.2实操演练200
10.2.1启动Seata200
10.2.2使用Seata实现事务控制208
10.3本章小结213
第11章电商项目案例214
11.1电商项目需求分析214
11.2电商项目的微服务架构设计215
11.3电商项目的实现216
11.4本章小结250
参考文献251
 
本教材全面系统地介绍了微服务架构的各个方面,从基础概念到实际应用,理论知识与实践操作相结合。教材通过丰富的实际案例,帮助读者深入理解和掌握微服务技术,强调实操性,每章均提供详细的演练步骤。在探讨技术组件时,本教材对比分析了不同方案,指导读者选择最佳技术方案。此外,教材保持内容更新,确保知识的时效性。为了辅助教学,本教材配备了课程标准、教学日历、教学课件和程序源码,以及题库,以便学生更好地掌握微服务相关知识点。
本教材适合有一定Java基础和Java Web系统开发经验的读者阅读。可以作为本专科计算机及相关专业的教材,也可以作为Java技术的培训教材。
本教材的作者是由经验丰富的一线骨干教师组成,他们不仅在教学中积累了丰富的教学经验,而且他们参与了大量的基于Java项目的开发,有着丰富的实践经验。本教材前8章由赵璘编写,第9章由王欢编写,第10、11章由田广强编写。全教材由赵璘统稿。本教材稿虽经多次修改,但不妥或疏漏之处在所难免,敬请广大同行、读者给予批评指正,在此先致谢意。作者邮箱:zhaolin_sx@neusoft.edu.cn。