转载至: https://download.csdn.net/download/u011824510/10983283
下载链接: 点我一键跳转到 下载链接
下载声明: 本资料仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版!
在这个凡事皆互联的时代,越来越多的人和物成为互联网上的节点,不断扩充着互联网这张大网的边界。节点即价值,更多的节点意味着更大的价值。那么如何去承载更多的节点就成为IT从业人士首要解决的问题。本书围绕秒杀抢购应用场景,对当下流行的Dubbox+Spring Boot+Docker微服务架构解决方案进行讲解。主要内容包括微服务架构介绍、Dubbox原理及运用、使用Spring Boot实现微服务、使用ActiveMQ+Redis承载高并发流量、使用ActiveMQ实现分布式事务、分布式下的第三方接入等。
本书以项目为驱动,引领读者对相关技术进行实践性学习。同时为了提升读者对相关技术的实际运用能力,本书将实际开发经验注入到整个项目开发周期中,使用目前较为流行的Dubbox+Spring Boot+Docker微服务架构实现“双11”抢购项目。
序言
前言
第 1章 架构设计 1
任务1 了解秒杀抢购业务场景 2
1.1.1 秒杀抢购业务场景介绍 2
1.1.2 秒杀抢购业务需求分析 3
任务2 架构设计 3
1.2.1 业务架构设计 3
1.2.2 应用架构设计 4
1.2.3 技术架构设计 4
1.2.4 部署架构设计 4
本章总结 6
本章练习 6
第 2章 微服务架构 7
任务1 了解软件行业分类并掌握软件架构分类 8
2.1.1 软件行业分类 8
2.1.2 软件架构分类 8
任务2 掌握微服务架构的相关概念 11
2.2.1 Provider和Consumer 12
2.2.2 RPC和RESTful 12
2.2.3 分布式 13
2.2.4 集群 13
任务3 熟悉常见微服务架构并掌握微服务架构设计原则 13
2.3.1 常见微服务架构 13
2.3.2 微服务架构设计原则 14
2.3.3 微服务架构解决方案 14
本章总结 14
本章练习 14
第3章 Docker环境搭建 15
任务1 了解Docker相关概念 16
3.1.1 Docker和虚拟机 16
3.1.2 Docker Container 17
3.1.3 Docker Image 18
3.1.4 Docker Registry 18
3.1.5 Docker运行原理 19
3.1.6 Docker容器IP和端口映射 19
3.1.7 Docker集群 20
任务2 掌握Docker安装步骤 20
任务3 掌握Docker常用命令 21
3.3.1 Docker镜像操作命令 21
3.3.2 Docker容器操作命令 23
任务4 了解Docker可视化 27
任务5 使用Docker搭建项目环境 27
3.5.1 环境要求 28
3.5.2 搭建步骤 28
3.5.3 相关配置和检查 29
3.5.4 测试服务 33
3.5.5 生成镜像 34
3.5.6 发布服务 34
本章总结 36
本章练习 36
第4章 Spring Boot初体验 37
任务1 掌握Spring Boot的定义和作用 38
4.1.1 定义 38
4.1.2 作用 38
任务2 掌握Spring Boot项目环境搭建的步骤 39
4.2.1 环境要求 39
4.2.2 环境搭建 39
4.2.3 核心组件 41
任务3 整合MyBatis和Redis 43
4.3.1 整合MyBatis 43
4.3.2 整合Redis 46
任务4 自定义Spring Boot的自动配置 48
本章总结 51
本章练习 51
第5章 使用Dubbox+Spring Boot搭建微服务架构 52
任务1 了解Dubbox的概念和运行环境 53
5.1.1 Dubbox介绍 53
5.1.2 依赖环境介绍 53
任务2 掌握Dubbox的运行原理 54
任务3 掌握Dubbox的搭建步骤 55
任务4 使用Dubbox实现提供者和消费者 58
5.4.1 创建通用接口项目 58
5.4.2 Dubbox实现提供者 59
5.4.3 Dubbox实现消费者 61
任务5 搭建“双11”抢购项目微服务架构 64
本章总结 64
本章练习 64
第6章 基于Redis+ActiveMQ实现高并发访问 65
任务1 初识分布式锁并使用Redis实现分布式锁 66
6.1.1 分布式锁的概念 66
6.1.2 使用Redis实现分布式锁 66
任务2 初识消息中间件 68
6.2.1 消息中间件概念 68
6.2.2 消息中间件作用 68
6.2.3 常见消息中间件 70
任务3 掌握消息中间件ActiveMQ的使用 70
6.3.1 安装与配置 70
6.3.2 使用Spring Boot整合ActiveMQ 71
任务4 在“双11”抢购项目中应用消息队列 75
6.4.1 缓存抢购请求 76
6.4.2 控制库存事务 76
本章总结 77
本章练习 77
第7章 分布式下的第三方接入 78
任务1 实现分布式下的微信登录功能 79
7.1.1 接入背景介绍 79
7.1.2 准备工作 79
7.1.3 授权流程说明 80
7.1.4 实现步骤及参数解析 80
7.1.5 编码实现 83
7.1.6 注意事项 85
任务2 实现分布式下的微信支付功能 87
7.2.1 微信支付功能介绍 87
7.2.2 微信支付申请流程 87
7.2.3 微信支付类型 87
7.2.4 微信扫码支付 88
7.2.5 相关参数获取 89
7.2.6 微信支付安全规范 90
7.2.7 微信扫码支付开发步骤 90
7.2.8 微信扫码支付前端设计 95
任务3 实现分布式下的支付宝支付功能 97
7.3.1 接入背景 97
7.3.2 开发步骤 97
本章总结 109
本章练习 109
第8章 高并发测试 110
任务1 了解压力测试相关概念 111
8.1.1 高并发压力测试 111
8.1.2 常见压力测试工具 111
任务2 使用JMeter进行高并发测试 112
8.2.1 下载并安装JMeter 112
8.2.2 使用JMeter进行“双11”抢购项目测试 113
任务3 使用JMeter生成测试报告 119
8.3.1 生成测试报告 119
8.3.2 分析测试报告 120
本章总结 123
本章练习 123