新書推薦:
《
养育女孩 : 官方升级版
》
售價:NT$
230.0
《
跨界:蒂利希思想研究
》
售價:NT$
500.0
《
千万别喝南瓜汤(遵守规则绘本)
》
售價:NT$
203.0
《
大模型启示录
》
售價:NT$
510.0
《
东法西渐:19世纪前西方对中国法的记述与评价
》
售價:NT$
918.0
《
养育男孩:官方升级版
》
售價:NT$
230.0
《
小原流花道技法教程
》
售價:NT$
500.0
《
少女映像室 唯美人像摄影从入门到实战
》
售價:NT$
505.0
|
內容簡介: |
本书重在引导读者体验真实的项目开发,围绕Spring Cloud Alibaba技术栈全面展开,兼顾相关技术的知识拓展,由浅入深,步步为营,对一个单体API项目进行拆解和微服务化,并从零到一落地一个功能完整、流程完善的微服务项目。本书的目标是让读者拥有完整且高质量的学习体验,远离“Hello World”项目,为技术深度的挖掘和薪水、职位的提升提供保障。本书分为13章。第1章主要介绍大型微服务架构实战项目,包括它的主要功能模块、从单体模式到前后端分离模式再到微服务架构模式的开发历程、微服务项目改造前的拆分思路、微服务架构实战项目的启动等注意事项。第2章至第8章主要介绍微服务架构项目的开发过程,介绍每个开发步骤、每个微服务模块的编码过程、每个微服务组件的整合,主要涉及的微服务组件是Nacos、OpenFeign和Spring Cloud LoadBalancer。第9章至第13章对实战的微服务架构项目进行补充,将Spring Cloud Gateway、Sentinel、Seata、Spring Cloud Sleuth、Zipkin等微服务组件整合到实战项目中,并对过程中遇到的问题进行复盘及处理。本书实战项目整合热门的微服务架构组件,手把手地教读者如何在实战中运用这些知识点,让读者掌握高阶的使用技巧,并且能够将其运用到实际生产项目中。本书的内容丰富,案例通俗易懂,几乎涵盖了目前Spring Cloud的全部热门组件,特别适合想要了解Spring Cloud热门组件及想搭建微服务系统的读者阅读。
|
關於作者: |
韩帅,笔名十三,企业技术主管、CSDN博客专家、视频讲师。毕业于安徽省巢湖学院,具有多年一线开发经验,历任高级开发工程师、产品线后端负责人、技术部门主管等职位。熟练使用Java、SQL、Spring Boot、Vue等计算机语言和开发框架,有非常丰富的开发经验,同时也是开源项目的爱好者和贡献者。
|
目錄:
|
第1章 大型微服务架构项目设计与实战1 1.1 微服务架构实战项目详解1 1.1.1 实战项目介绍2 1.1.2 新蜂商城项目的开源历程3 1.1.3 新蜂商城项目的功能及数据库设计4 1.2 从单体项目到微服务架构项目的拆分思路6 1.3 微服务架构实战项目源代码获取和项目启动8 1.3.1 基础环境准备及微服务组件安装和配置8 1.3.2 下载微服务架构实战项目的项目源代码8 1.3.3 微服务架构实战项目的目录结构讲解10 1.3.4 启动并验证微服务实例13 1.4 微服务架构实战项目的功能演示21 1.4.1 商城用户的注册与登录演示21 1.4.2 把商品添加到购物车的功能演示25 1.4.3 下单流程演示28 1.4.4 后台管理系统的部分功能演示32 1.5 微服务架构实战项目中接口的参数处理及统一结果响应38 1.6 微服务架构实战项目打包和部署的注意事项41 第2章 实战项目基础构建及公共模块引入48 2.1 编码前的准备48 2.2 搭建项目骨架49 2.2.1 构建项目并整理依赖关系49 2.2.2 编写测试代码54 2.3 用户微服务编码58 2.3.1 引入业务依赖58 2.3.2 用户模块中的接口改造60 2.3.3 用户微服务改造过程中遇到的问题总结62 2.4 引入公共模块64 2.5 用户微服务模块改造66 2.6 OpenFeign编码暴露远程接口71 2.7 远程调用Feign包应该如何设置72 第3章 用户微服务编码实践及功能讲解74 3.1 登录流程介绍74 3.1.1 什么是登录74 3.1.2 用户登录状态75 3.1.3 登录流程设计75 3.2 登录功能源代码介绍78 3.3 token值处理及鉴权源代码介绍80 3.4 用户微服务代码改造83 3.4.1 引入Redis组件进行鉴权改造83 3.4.2 用户微服务中登录代码及鉴权代码修改86 3.5 网关层鉴权88 3.5.1 在网关层引入Redis88 3.5.2 鉴权的全局过滤器编码实现89 3.5.3 功能测试91 第4章 商品微服务编码实践及功能讲解95 4.1 商品微服务模块介绍95 4.1.1 商品分类管理模块介绍95 4.1.2 商品管理模块介绍99 4.2 创建商品微服务编码103 4.3 商品微服务与用户微服务通信108 4.3.1 为什么需要调用用户中心服务109 4.3.2 商品微服务调用用户中心编码实践110 4.3.3 功能测试113 4.4 商品微服务编码117 4.4.1 商品微服务代码改造117 4.4.2 OpenFeign编码暴露远程接口120 4.4.3 功能测试121 4.5 改造过程中遇到的问题总结124 4.5.1 问题1:循环依赖124 4.5.2 问题2:缺少loadbalancer依赖125 第5章 推荐微服务编码实践及功能讲解126 5.1 推荐微服务主要功能模块介绍126 5.1.1 轮播图管理模块介绍126 5.1.2 商品推荐管理模块介绍129 5.1.3 表结构设计130 5.2 创建推荐微服务编码133 5.3 推荐微服务编码139 5.3.1 推荐微服务调用用户中心编码实践139 5.3.2 推荐微服务编码141 5.3.3 推荐微服务远程调用商品微服务编码实践144 5.3.4 功能测试147 第6章 用户微服务及商品微服务功能完善151 6.1 增加商城用户的相关功能151 6.1.1 商城用户模块介绍151 6.1.2 商城用户功能模块编码152 6.1.3 商城用户模块代码完善154 6.1.4 OpenFeign编码暴露远程接口158 6.1.5 商城用户鉴权功能测试160 6.2 新增商城端网关模块164 6.2.1 创建商城端网关newbee-mall-cloud-gateway-mall164 6.2.2 商城端网关功能测试168 6.3 商城首页数据的接口实现170 6.3.1 商城首页的排版设计171 6.3.2 首页接口的响应结果设计172 6.3.3 业务层代码的实现174 6.3.4 调用商品微服务进行数据的查询与封装175 6.3.5 首页接口控制层代码的实现177 6.3.6 首页接口网关配置179 6.4 商城分类页面的接口实现180 6.4.1 分类页面的接口响应数据180 6.4.2 业务层代码的实现182 6.4.3 分类页面数据接口控制层代码的实现185 6.4.4 分类接口网关配置187 6.5 商品列表和商品详情页面的接口实现187 6.5.1 接口传参解析及返回字段定义188 6.5.2 业务层代码的实现191 6.5.3 控制层代码的实现194 6.5.4 商品接口网关配置197 6.6 商城端部分接口的功能测试198 6.6.1 获取首页数据的接口测试198 6.6.2 获取分类页面的数据接口测试201 第7章 购物车微服务编码实践及功能讲解205 7.1 购物车微服务主要功能介绍205 7.1.1 购物车模块介绍205 7.1.2 购物车模块表结构设计206 7.2 创建购物车微服务模块207 7.3 远程调用用户微服务及其他注意事项212 7.4 购物车微服务编码215 7.4.1 购物车微服务代码改造216 7.4.2 网关模块配置218 7.5 购物车微服务远程调用商品微服务编码实践219 7.6 购物车微服务功能测试222 7.7 OpenFeign编码暴露远程接口226 第8章 订单微服务编码实践及功能讲解228 8.1 订单微服务主要功能模块介绍228 8.1.1 订单模块介绍228 8.1.2 订单模块的表结构设计229 8.1.3 订单模块中的主要功能分析234 8.1.4 订单处理流程及订单状态的介绍239 8.2 创建订单微服务模块242 8.3 订单微服务编码243 8.4 订单微服务远程调用商品微服务和购物车微服务编码实践246 8.5 订单微服务功能测试252 8.5.1 添加收货地址接口演示253 8.5.2 生成订单接口演示255 8.5.3 订单列表接口演示256 第9章 Spring Cloud Gateway聚合Swagger接口259 9.1 为什么要聚合Swagger259 9.2 网关层聚合Swagger的实现思路260 9.3 网关层聚合Swagger编码263 第10章 微服务架构实战项目中整合Seata268 10.1 实战项目中整合Seata编码实践268 10.2 “分支事务不回滚”问题的复盘271 10.2.1 发现问题271 10.2.2 尝试解决问题271 10.2.3 分析问题产生的原因272 10.2.4 查看源代码并确定问题所在273 10.2.5 解决问题275 第11章 微服务架构实战项目中整合Sentinel278 11.1 实战项目中整合Sentinel编码实践278 11.2 “Sentinel控制台页面中的微服务数据空白”问题的处理280 11.2.1 错误的解决思路280 11.2.2 正确的解决思路282 第12章 微服务架构实战项目中整合Seluth、Zipkin291 12.1 整合Spring Cloud Sleuth编码实践291 12.2 在全局异常处理类中增加日志305 12.3 整合Zipkin实践307 第13章 微服务架构实战项目中整合ELK日志中心311 13.1 微服务架构项目中的日志输出配置311 13.2 通过Kibana查询日志314 13.2.1 查看日志314 13.2.2 日志定时刷新315 13.2.3 常用的日志搜索条件316 13.2.4 根据traceId搜索日志317
|
|