微服务实战:Dubbox+Spring Boot+Docker作者: 肖睿出版时间: 2018.8内容简介 在这个凡事皆互联的时代,越来越多的人和物成为互联网上的节点,不断扩充着互联网这张大网的边界。节点即价值,更多的节点意味着更大的价值。那么如何去承载更多的节点就成为IT从业人士首要解决的问题。本书围绕秒杀抢购应用场景,对当下流行的Dubbox+Spring Boot+Docker微服务架构解决方案进行讲解。主要内容包括微服务架构介绍、Dubbox原理及运用、使用Spring Boot实现微服务、使用ActiveMQ+Redis承载高并发流量、使用ActiveMQ实现分布式事务、分布式下的第三方接入等。本书以项目为驱动,**读者对相关技术进行实践性学习。同时为了提升读者对相关技术的实际运用能力,本书将实际开发经验注入到整个项目开发周期中,使用目前较为流行的Dubbox+Spring Boot+Docker微服务架构实现“***”抢购项目。为保证*优学习效果,本书配以完善的学习资料和支持服务,包括视频教程、案例素材下载、学习交流社区、讨论组等终身学习内容,为开发者带来全方位的学习体验。目录序言前言第 1章 架构设计 1任务1 了解秒杀抢购业务场景 21.1.1 秒杀抢购业务场景介绍 21.1.2 秒杀抢购业务需求分析 3任务2 架构设计 31.2.1 业务架构设计 31.2.2 应用架构设计 41.2.3 技术架构设计 41.2.4 部署架构设计 4本章总结 6本章练习 6第 2章 微服务架构 7任务1 了解软件行业分类并掌握软件架构分类 82.1.1 软件行业分类 82.1.2 软件架构分类 8任务2 掌握微服务架构的相关概念 112.2.1 Provider和Consumer 122.2.2 RPC和RESTful 122.2.3 分布式 132.2.4 集群 13任务3 熟悉常见微服务架构并掌握微服务架构设计原则 132.3.1 常见微服务架构 132.3.2 微服务架构设计原则 142.3.3 微服务架构解决方案 14本章总结 14本章练习 14第3章 Docker环境搭建 15任务1 了解Docker相关概念 163.1.1 Docker和虚拟机 163.1.2 Docker Container 173.1.3 Docker Image 183.1.4 Docker Registry 183.1.5 Docker运行原理 193.1.6 Docker容器IP和端口映射 193.1.7 Docker集群 20任务2 掌握Docker安装步骤 20任务3 掌握Docker常用命令 213.3.1 Docker镜像操作命令 213.3.2 Docker容器操作命令 23任务4 了解Docker可视化 27任务5 使用Docker搭建项目环境 273.5.1 环境要求 283.5.2 搭建步骤 283.5.3 相关配置和检查 293.5.4 测试服务 333.5.5 生成镜像 343.5.6 发布服务 34本章总结 36本章练习 36第4章 Spring Boot初体验 37任务1 掌握Spring Boot的定义和作用 384.1.1 定义 384.1.2 作用 38任务2 掌握Spring Boot项目环境搭建的步骤 394.2.1 环境要求 394.2.2 环境搭建 394.2.3 核心组件 41任务3 整合MyBatis和Redis 434.3.1 整合MyBatis 434.3.2 整合Redis 46任务4 自定义Spring Boot的自动配置 48本章总结 51本章练习 51第5章 使用Dubbox+Spring Boot搭建微服务架构 52任务1 了解Dubbox的概念和运行环境 535.1.1 Dubbox介绍 535.1.2 依赖环境介绍 53任务2 掌握Dubbox的运行原理 54任务3 掌握Dubbox的搭建步骤 55任务4 使用Dubbox实现提供者和消费者 585.4.1 创建通用接口项目 585.4.2 Dubbox实现提供者 595.4.3 Dubbox实现消费者 61任务5 搭建“双11”抢购项目微服务架构 64本章总结 64本章练习 64第6章 基于Redis+ActiveMQ实现高并发访问 65任务1 初识分布式锁并使用Redis实现分布式锁 666.1.1 分布式锁的概念 666.1.2 使用Redis实现分布式锁 66任务2 初识消息中间件 686.2.1 消息中间件概念 686.2.2 消息中间件作用 686.2.3 常见消息中间件 70任务3 掌握消息中间件ActiveMQ的使用 706.3.1 安装与配置 706.3.2 使用Spring Boot整合ActiveMQ 71任务4 在“双11”抢购项目中应用消息队列 756.4.1 缓存抢购请求 766.4.2 控制库存事务 76本章总结 77本章练习 77第7章 分布式下的第三方接入 78任务1 实现分布式下的微信登录功能 797.1.1 接入背景介绍 797.1.2 准备工作 797.1.3 授权流程说明 807.1.4 实现步骤及参数解析 807.1.5 编码实现 837.1.6 注意事项 85任务2 实现分布式下的微信支付功能 877.2.1 微信支付功能介绍 877.2.2 微信支付申请流程 877.2.3 微信支付类型 877.2.4 微信扫码支付 887.2.5 相关参数获取 897.2.6 微信支付安全规范 907.2.7 微信扫码支付开发步骤 907.2.8 微信扫码支付前端设计 95任务3 实现分布式下的支付宝支付功能 977.3.1 接入背景 977.3.2 开发步骤 97本章总结 109本章练习 109第8章 高并发测试 110任务1 了解压力测试相关概念 1118.1.1 高并发压力测试 1118.1.2 常见压力测试工具 111任务2 使用JMeter进行高并发测试 1128.2.1 下载并安装JMeter 1128.2.2 使用JMeter进行“双11”抢购项目测试 113任务3 使用JMeter生成测试报告 1198.3.1 生成测试报告 1198.3.2 分析测试报告 120本章总结 123本章练习 123 上一篇: 编程的乐趣:用Python解算法谜题 下一篇: 拆穿数据胡扯 [(美)卡尔 伯格斯特龙]