Spring Cloud微服务架构进阶分布式中间件技术实战(Java版)微服务架构设计jpdf下载

Spring Cloud微服务架构进阶分布式中间件技术实战(Java版)微服务架构设计j百度网盘pdf下载

作者:
简介:Spring Cloud微服务架构进阶分布式中间件技术实战(Java版)微服务架构设计j
出版社:
出版时间:2018-10
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍



商品参数

【全2册】Spring Cloud微服务架构进阶分布式中间件技术实战(Java版)
定价 218.00
ISBN编码 9787111608684


内容介绍

Spring Cloud微服务架构进阶
             定价 89.00
出版社 机械工业出版社
出版时间 2018年10月
开本 16开
作者 朱荣鑫 张天 黄迪璇
页数 428
ISBN编码 9787111608684

内容介绍

本书全面系统地介绍SpringCloud及其在微服务架构中的应用。全书共13章,第1章介绍微服务架构相关的基本概念;第2章介绍SpringCloud中包含的组件以SpringCloud约定的上下文;第3章介绍SpringCloud的基础:SpringBoot,包括如何构建一个SpringBoot服务、SpringBoot的配置文件和Actuator提供的监控管理端点;第4至第13章详细讲解SpringCloud组件,包括:Eureka(服务注册与发现)、OpenFeign(声明式Restful客户端)、Hystrix(断路器)、Ribbon(客户端负载均衡器)、Gateway(API网关)、Config(配置中心)、Stream(消息驱动)、Bus(消息总线)、Security(认证与授权)、Sleuth(服务链路追踪)。本书为读者揭开了SpringCloud组件实现的技术内幕,并提供了进阶应用的思路,可以作为使用SpringCloud进行微服务架构实践的参考书。


目录

前言
第1章 微服务架构介绍1
1.1 微服务架构的出现1
1.1.1 单体应用架构1
1.1.2 SOA架构2
1.1.3 微服务架构3
1.2 微服务架构的流派5
1.3 云原生与微服务9
1.4 本章小结12
第2章 Spring Cloud总览13
2.1 Spring Cloud架构13
2.2 Spring Cloud特性16
2.2.1 Spring Cloud Context:应用上下文16
2.2.2 Spring Cloud Commons:公共抽象19
2.3 本章小结21
第3章 Spring Cloud的基础:Spring Boot22
3.1 Spring Boot简介22
3.2 构建一个微服务24
3.3 Spring Boot配置文件29
3.3.1 默认配置文件29
3.3.2 外部化配置29
3.3.3 YAML30
3.3.4 自动载入外部属性到Bean30
3.3.5 多Profile31
3.3.6 Starter32
3.3.7 自制一个Starter32
3.3.8 Actuator36
3.4 本章小结38
第4章 服务注册与发现:Eureka39
4.1 基础应用40
4.1.1 Eureka简介40
4.1.2 搭建Eureka服务注册中心40
4.1.3 搭建Eureka服务提供者42
4.1.4 搭建Eureka服务调用者43
4.1.5 Eureka服务注册和发现44
4.1.6 Consul的简单应用46
4.2 服务发现原理48
4.3 Eureka Client源码解析49
4.3.1 读取应用自身配置信息50
4.3.2 服务发现客户端52
4.3.3 拉取注册表信息56
4.3.4 服务注册61
4.3.5 初始化定时任务62
4.3.6 服务下线68
4.4 Eureka Server源码解析70
4.4.1 服务实例注册表70
4.4.2 服务注册72
4.4.3 接受服务心跳74
4.4.4 服务剔除75
4.4.5 服务下线77
4.4.6 集群同步78
4.4.7 获取注册表中服务实例信息82
4.5 进阶应用84
4.5.1 Eureka Instance和Client的元数据84
4.5.2 状态页和健康检查页端口设置85
4.5.3 区域与可用区85
4.5.4 高可用性#服务注册中心86
4.6 本章小结87
第5章 声明式RESTful客户端:Spring Cloud OpenFeign88
5.1 基础应用88
5.1.1 微服务之间的交互88
5.1.2 OpenFeign简介89
5.1.3 代码示例89
5.2 源码分析91
5.2.1 核心组件与概念91
5.2.2 动态注册BeanDefinition92
5.2.3 实例初始化98
5.2.4 函数调用和网络请求107
5.3 进阶应用111
5.3.1 Decoder与Encoder的定制化111
5.3.2 请求/响应压缩112
5.4 本章小结113
第6章 断路器:Hystrix114
6.1 基础应用114
6.1.1 RestTemplate与Hystrix115
6.1.2 OpenFeign与Hystrix117
6.2 Hystrix原理118
6.2.1 服务雪崩118
6.2.2 断路器119
6.2.3 服务降级操作120
6.2.4 资源隔离121
6.2.5 Hystrix实现思路122
6.3 源码解析123
6.3.1 封装HystrixCommand123
6.3.2 HystrixCommand类结构129
6.3.3 异步回调执行命令129
6.3.4 异步执行命令和同步执行命令137
6.3.5 断路器逻辑137
6.3.6 资源隔离143
6.3.7 请求超时监控148
6.3.8 失败回滚逻辑150
6.4 进阶应用152
6.4.1 异步与异步回调执行命令152
6.4.2 继承HystrixCommand153
6.4.3 请求合并157
6.5 本章小结161
第7章 客户端负载均衡器:Spring Cloud Netflix Ribbon162
7.1 负载均衡162
7.2 基础应用163
7.3 源码分析165
7.3.1 配置和实例初始化165
7.3.2 与OpenFeign的集成167
7.3.3 负载均衡器LoadBalancerClient171
7.3.4 ILoadBalancer173
7.3.5 负载均衡策略实现177
7.4 进阶应用184
7.4.1 Ribbon API184
7.4.2 使用Netty发送网络请求185
7.4.3 只读数据库的负载均衡实现186
7.5 本章小结187
第8章 API网关:Spring Cloud Gateway189
8.1 Spring Cloud Gateway介绍189
8.2 基础应用190
8.2.1 用户服务191
8.2.2 网关服务192
8.2.3 客户端的访问195
8.3 源码解析195
8.3.1 初始化配置196
8.3.2 网关处理器197
8.3.3 路由定义定位器202
8.3.4 路由定位器205
8.3.5 路由断言208
8.3.6 网关过滤器216
8.3.7 全局过滤器227
8.3.8 API端点234
8.4 应用进阶235
8.4.1 限流机制235
8.4.2 熔断降级238
8.4.3 网关重试过滤器240
8.5 本章小结241
第9章 配置中心:Spring Cloud Config243
9.1 基础应用244
9.1.1 配置客户端244
9.1.2 配置仓库245
9.1.3 服务端246
9.1.4 配置验证248
9.1.5 配置动态更新249
9.2 源码解析250
9.2.1 配置服务器251
9.2.2 配置客户端261
9.3 应用进阶267
9.3.1 为Config Server配置多个repo268
9.3.2 客户端覆写远端的配置属性268
9.3.3 属性覆盖269
9.3.4 安全保护269
9.3.5 加密解密270
9.3.6 快速响应失败与重试机制272
9.4 本章小结272
第10章 消息驱动:Spring Cloud Stream274
10.1 消息队列274
10.2 基础应用276
10.2.1 声明和绑定通道276
10.2.2 自定义通道276
10.2.3 接收消息276
10.2.4 配置278
10.3 源码分析278
10.3.1 动态注册BeanDefinition279
10.3.2 绑定服务282
10.3.3 获取绑定器284
10.3.4 绑定生产者289
10.3.5 消息发送的流程291
10.3.6 StreamListener注解的处理293
10.3.7 绑定消费者298
10.3.8 消息的接收304
10.4 进阶应用306
10.4.1 Bin





目录

分布式中间件技术实战(Java版)
             定价 129.00
出版社 机械工业出版社
出版时间 2020年12月
开本 16开
作者 钟林森 著
页数
ISBN编码 9787111641513


内容介绍

 《分布式中间件技术实战(Java版)》站在初学者的角度,介绍了几款比较流行的分布式中间件,带领读者从零开始一步一个脚印地学习Java企业级应用开发。书中在讲解必要的理论知识和应用场景后都给出了实际项目案例,可以提高读者的开发水*和项目实战能力。 《分布式中间件技术实战(Java版)》共10章,分为3篇。第1篇开发工具准备,介绍了分布式系统架构的相关知识要点,包括其功能、作用及演进历程,并由此引出了分布式中间件的相关介绍。第2篇开发实战,全面介绍了目前在实际开发中应用比较广泛的几款Java中间件,包括缓存中间件Redis、消息中间件RabbitMQ、统一协调管理中间件ZooKeeper和综合中间件Redisson等,重点介绍了这几款中间件的基本概念、典型应用场景及相应的功能组件等。第3篇总结,对相关内容做了重点回顾与总结。值得一提的是,《分布式中间件技术实战(Java版)》在介绍几款中间件的理论知识时,还以Spring Boot微服务框架作为奠基,整合了相关中间件之间的依赖,并结合作者的实际项目经验进行了代码实战。 《分布式中间件技术实战(Java版)》特别适合中间件实践经验为零的开发#者阅读;对于有一定Java应用开发经验的工程师而言,通过阅读《分布式中间件技术实战(Java版)》可以了解中间件在构建企业级应用过程中所提供的思路和解决方案;IT培训机构的学员,也可以通过《分布式中间件技术实战(Java版)》系统地学习中间件技术。


作者简介

《分布式中间件技术实战(Java版)》站在初学者的角度,介绍了几款比较流行的分布式中间件,带领读者从零开始一步一个脚印地学习Java企业级应用开发。书中在讲解必要的理论知识和应用场景后都给出了实际项目案例,可以提高读者的开发水*和项目实战能力。

《分布式中间件技术实战(Java版)》共10章,分为3篇。第1篇开发工具准备,介绍了分布式系统架构的相关知识要点,包括其功能、作用及演进历程,并由此引出了分布式中间件的相关介绍。第2篇开发实战,全面介绍了目前在实际开发中应用比较广泛的几款Java中间件,包括缓存中间件Redis、消息中间件RabbitMQ、统一协调管理中间件ZooKeeper和综合中间件Redisson等,重点介绍了这几款中间件的基本概念、典型应用场景及相应的功能组件等。第3篇总结,对相关内容做了重点回顾与总结。值得一提的是,《分布式中间件技术实战(Java版)》在介绍几款中间件的理论知识时,还以Spring Boot微服务框架作为奠基,整合了相关中间件之间的依赖,并结合作者的实际项目经验进行了代码实战。

《分布式中间件技术实战(Java版)》特别适合中间件实践经验为零的开发#者阅读;对于有一定Java应用开发经验的工程师而言,通过阅读《分布式中间件技术实战(Java版)》可以了解中间件在构建企业级应用过程中所提供的思路和解决方案;IT培训机构的学员,也可以通过《分布式中间件技术实战(Java版)》系统地学习中间件技术。


目录

第1篇  开发工具准备

第1章  走进分布式中间件 2
1.1  分布式系统概述 2
1.1.1  白话分布式系统 3
1.1.2  分布式系统发展历程 3
1.1.3  分布式系统特性 6
1.1.4  分布式系统常见问题 7
1.2  分布式中间件概述 7
1.2.1  白话分布式中间件 7
1.2.2  常见中间件介绍 8
1.3  本书核心知识要点 9
1.4  本书实战要求与建议 10
第2章  搭建微服务项目 11
2.1  Spring Boot概述 11
2.1.1  什么是Spring Boot 11
2.1.2  Spring Boot的优势 12
2.1.3  Spring Boot的几大特性 13
2.2  搭建规范与搭建流程 13
2.2.1  Spring Boot项目搭建规范 14
2.2.2  Spring Boot项目搭建流程 14
2.2.3  写个Hello World吧 26
2.3  总结 28
第2篇  开发实战
第3章  缓存中间件Redis 30
3.1  Redis概述与典型应用场景介绍 30
3.2  Redis的使用 32
3.2.1  快速安装Redis 32
3.2.2  在Windows环境下使用Redis 34
3.2.3  Spring Boot项目整合Redis 37
3.2.4  Redis自定义注入Bean组件配置 38
3.2.5  RedisTemplate实战 39
3.2.6  StringRedisTemplate实战 43
3.3  Redis常见数据结构实战 45
3.3.1  字符串 45
3.3.2  列表 47
3.3.3  集合 48
3.3.4  有序集合 50
3.3.5  哈希Hash存储 52
3.3.6  Key失效与判断是否存在 54
3.4  Redis实战场景之缓存穿透 56
3.4.1  什么是缓存穿透 57
3.4.2  缓存穿透的解决方案 58
3.4.3  实战过程 58
3.4.4  其他典型问题介绍 65
3.5  总结 66
第4章  Redis典型应用场景实战之抢红包系统 67
4.1  整体业务流程介绍 67
4.1.1  抢红包系统业务流程 68
4.1.2  业务流程分析 68
4.1.3  业务模块划分 70
4.2  数据库表设计与环境搭建 71
4.2.1  数据库表设计 71
4.2.2  开发环境搭建 73
4.2.3  开发流程介绍 83
4.3  “红包金额”随机生成算法实战 85
4.3.1  随机数算法 86
4.3.2  红包随机金额生成算法要求 86
4.3.3  二倍均值法简介 87
4.3.4  红包随机金额生成算法实战 88
4.3.5  红包随机金额生成算法自测 90
4.4  “发红包”模块实战 91
4.4.1  业务模块分析 92
4.4.2  整体流程实战 93
4.4.3  业务模块自测 99
4.5  “抢红包”模块实战 101
4.5.1  业务模块分析 101
4.5.2  整体流程 102
4.5.3  业务模块自测 105
4.5.4  总结 109
4.6  Jmeter压力测试高并发抢红包 110
4.7  问题分析与优化方案 116
4.7.1  问题分析 117
4.7.2  优化方案介绍 118
4.7.3  优化方案之Redis分布式锁实战 118
4.7.4  不足之处 122
4.8  总结 122
第5章  消息中间件RabbitMQ 124
5.1  RabbitMQ简介 124
5.1.1  认识RabbitMQ 125
5.1.2  典型应用场景介绍 126
5.1.3  RabbitMQ后端控制台介绍 132
5.1.4  基于Spring的事件驱动模型实战 133
5.2  Spring Boot项目整合RabbitMQ 137
5.2.1  RabbitMQ相关词汇介绍 138
5.2.2  Spring Boot项目整合RabbitMQ 139
5.2.3  自定义注入配置Bean相关组件 140
5.2.4  RabbitMQ发送、接收消息实战 142
5.2.5  其他发送接收消息方式实战 147
5.3  RabbitMQ多种消息模型实战 152
5.3.1  基于FanoutExchange的消息模型实战 152
5.3.2  基于DirectExchange的消息模型实战 160
5.3.3  基于TopicExchange的消息模型实战 165
5.4  RabbitMQ确认消费机制 171
5.4.1  消息高可用和确认消费 172
5.4.2  常见的确认消费模式介绍 174
5.4.3  基于自动确认消费模式实战 176
5.4.4  基于手动确认消费模式实战 182
5.5  典型应用场景实战之用户登录成功写日志 188
5.5.1  整体业务流程介绍与分析 188
5.5.2  数据库表设计 189
5.5.3  开发环境搭建 197
5.5.4  基于TopicExchange构建日志消息模型 200
5.5.5  异步发送接收登录日志消息实战 201
5.5.6  整体业务模块自测实战 205
5.6  总结 208
第6章  死信队列/延迟队列实战 209
6.1  死信队列概述 209
6.1.1  死信队列简介与作用 209
6.1.2  典型应用场景介绍 212
6.2  RabbitMQ死信队列实战 213
6.2.1  死信队列专有词汇介绍 214
6.2.2  死信队列消息模型实战 215
6.2.3  死信队列延迟发送消息实战 221
6.3  典型应用场景实战之商城*台订单支付超时 226
6.3.1  整体业务场景介绍 227
6.3.2  整体业务流程分析 228
6.3.3  数据库设计 229
6.3.4  构建RabbitMQ死信队列消息模型 236
6.3.5  Controller层开发用户下单及订单失效功能 240
6.3.6  “用户下单支付超时”延迟发送接收实战 246
6.3.7  “用户下单支付超时”整体功能自测 250
6.4  总结 254
第7章  分布式锁实战 256
7.1  分布式锁概述 256
7.1.1  锁机制 257
7.1.2  分布式锁登场 263
7.1.3  典型应用场景介绍 265
7.1.4  小结 268
7.2  基于数据库实现分布式锁 268
7.2.1  乐观锁简介 268
7.2.2  乐观锁实战 269
7.2.3  Jmeter高并发测试乐观锁 280
7.2.4  悲观锁简介 286
7.2.5  悲观锁实战 288
7.2.6  Jmeter高并发测试悲观锁 290
7.2.7  小结 291
7.3  基于Redis实现分布式锁 292
7.3.1  Redis温故而知新 292
7.3.2  分布式锁的实现流程与原理分析 294
7.3.3  基于Redis实战实现分布式锁 295
7.3.4  Jmeter高并发测试 303
7.3.5  小结 307
7.4  基于ZooKeeper实现分布式锁 308
7.4.1  ZooKeeper简介与作用 308
7.4.2  分布式锁的实现流程与原理分析 310
7.4.3  Spring Boot整合ZooKeeper 312
7.4.4  基于ZooKeeper实现分布式锁 315
7.4.5  Jmeter高并发测试 317
7.4.6  小结 319
7.5  典型应用场景之书籍抢购模块设计与实战 319
7.5.1  整体业务流程介绍与分析 319
7.5.2  数据库表设计与用例设计 321
7.5.3  书籍抢购核心业务逻辑开发实战 324
7.5.4  Jmeter重现“库存超卖”的问题 328
7.5.5  采用分布式锁解决问题 330
7.5.6  小结 334
7.6  总结 334
第8章  综合中间件Redisson 336
8.1  Redisson概述 336
8.1.1  Redisson简介与作用 337
8.1.2  Redisson的功能特性 339
8.1.3  典型应用场景之布隆过滤器与主题 340
8.1.4  典型应用场景之延迟队列与分布式锁 345
8.1.5  Spring Boot整合Redisson 348
8.2  Redisson常见功能组件实战 352
8.2.1  布隆过滤器 352
8.2.2  发布-订阅式主题 355
8.2.3  数据结构之映射Map 361
8.2.4  数据结构之集合Set 366
8.2.5  队列Queue实战 370
8.2.6  延迟队列Delayed Queue实战1 374
8.2.7  延迟队列Delayed Queue实战2 381
8.3  分布式锁实战 385
8.3.1  重温分布式锁 385
8.3.2  分布式锁之一次性锁实战 387
8.3.3  分布式锁之可重入锁实战 392
8.4  总结 398
第9章  Redisson典型应用场景实战之高性能点赞 399
9.1  整体业务流程介绍与分析 399
9.1.1  业务背景介绍 400
9.1.2  业务流程介绍与分析 401
9.1.3  业务模块划分与数据库设计 404
9.2  “点赞与取消点赞”操作模块实战 409
9.2.1  “点赞与取消点赞”业务流程分析 409
9.2.2  Controller层接收请求信息 412
9.2.3  Service层插入、更新并缓存记录信息 415
9.2.4  业务模块自测 421
9.3  “排行榜”业务模块实战 424
9.3.1  “排行榜”业务流程分析 425
9.3.2  接收前端请求并触发缓存排行榜 426
9.3.3  业务模块自测 428
9.4  总结 432
第3篇   总结
第10章  总结与回顾 434