人民邮电出版社有限公司店铺主页二维码
人民邮电出版社有限公司 微信认证
人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
微信扫描二维码,访问我们的微信店铺
你可以使用微信联系我们,随时随地的购物、客服咨询、查询订单和物流...

Spring Cloud微服务和分布式系统实践

89.30
运费: ¥ 0.00-20.00
Spring Cloud微服务和分布式系统实践 商品图0
Spring Cloud微服务和分布式系统实践 商品图1
Spring Cloud微服务和分布式系统实践 商品图2
Spring Cloud微服务和分布式系统实践 商品图3
Spring Cloud微服务和分布式系统实践 商品图4
Spring Cloud微服务和分布式系统实践 商品图5
Spring Cloud微服务和分布式系统实践 商品图6
Spring Cloud微服务和分布式系统实践 商品图7
Spring Cloud微服务和分布式系统实践 商品图8
Spring Cloud微服务和分布式系统实践 商品图9
Spring Cloud微服务和分布式系统实践 商品图10
Spring Cloud微服务和分布式系统实践 商品图11
Spring Cloud微服务和分布式系统实践 商品图12
Spring Cloud微服务和分布式系统实践 商品图13
Spring Cloud微服务和分布式系统实践 商品图14
Spring Cloud微服务和分布式系统实践 商品缩略图0 Spring Cloud微服务和分布式系统实践 商品缩略图1 Spring Cloud微服务和分布式系统实践 商品缩略图2 Spring Cloud微服务和分布式系统实践 商品缩略图3 Spring Cloud微服务和分布式系统实践 商品缩略图4 Spring Cloud微服务和分布式系统实践 商品缩略图5 Spring Cloud微服务和分布式系统实践 商品缩略图6 Spring Cloud微服务和分布式系统实践 商品缩略图7 Spring Cloud微服务和分布式系统实践 商品缩略图8 Spring Cloud微服务和分布式系统实践 商品缩略图9 Spring Cloud微服务和分布式系统实践 商品缩略图10 Spring Cloud微服务和分布式系统实践 商品缩略图11 Spring Cloud微服务和分布式系统实践 商品缩略图12 Spring Cloud微服务和分布式系统实践 商品缩略图13 Spring Cloud微服务和分布式系统实践 商品缩略图14

商品详情

书名:Spring Cloud微服务和分布式系统实践  
定价:119.0  
ISBN:9787115532206  
作者:杨开振  
版次:第1版  
出版时间:2020-05  

内容提要:  
本书从企业的真实需求出发,理论结合实际,深入讲解Spring Cloud微服务和分布式系统的知识。书中既包括Spring Cloud微服务的各类常用组件的讲解,又包括分布式系统的常用知识的介绍。Spring Cloud组件方面主要讲解服务注册和服务发现(Eureka)、服务调用(Ribbon和OpenFeign)、断路器(Hystrix和Resilience4j)、网关(Zuul和Gateway)、配置(Config)、全链路追踪(Sleuth)、微服务的监控(Admin)等;分布式系统方面主要讲解分布式数据库、分布式缓存、会话和权限以及发号机制等。本书的实践部分通过Apache Thrift讲解了远程过程调用(RPC)在分布式系统中的应用,并且分析了处理高并发的一些常用方法,*后还通过一个简单的实例讲解了微服务系统的搭建。 本书适合想要学习Spring Cloud微服务、分布式系统开发的各类Java开发人员阅读,包括初学者和开发工程师。本书对架构师也有一定的帮助。  

作者简介:  
杨开振,精通Java互联网技术,拥有十余年企业一线开发和实践经验,著有《深入浅出Spring Boot 2.x》《深入浅出MyBatis技术原理与实战》《Java EE互联网轻量级框架整合开发——SSM框架(Spring MVC+Spring+MyBatis)和Redis实现》等业内畅销书。  

目录:  
目 录  
第 一部分 概述和基础  
第 1章 分布式和微服务概述 3  
1.1 互联网系统的特征 4  
1.2 分布式系统概述 4  
1.2.1 分布式的切分方法 5  
1.2.2 分布式系统所面临的问题 8  
1.2.3 分布式的衡量标准 9  
1.3 分布式系统的设计原则 10  
1.3.1 CAP原则 10  
1.3.2 BASE理论 11  
1.4 微服务架构 12  
1.4.1 概述 12  
1.4.2 微服务的风格 12  
1.4.3 微服务和分布式系统的关系 15  
1.5 Spring Cloud 15  
1.5.1 Spring Cloud的各个组件的简介 16  
1.5.2 Spring Cloud版本说明 16  
1.6 微服务系统样例简介 17  
第 2章 技术基础 19  
2.1 Spring Boot 19  
2.1.1 创建Spring Boot工程 19  
2.1.2 Spring Boot开发简介 21  
2.1.3 多文件配置 25  
2.1.4 打包和运行 27  
2.1.5 Spring Boot监控 28  
2.1.6 Spring Boot小结 29  
2.2 REST风格简介 29  
2.2.1 REST风格概述 30  
2.2.2 REST风格端点开发 31  
2.2.3 状态码和响应头 35  
2.2.4 客户端RestTemplate的使用 38  
*二部分 Spring Cloud微服务  
第3章 服务治理——Eureka 43  
3.1 服务治理中心 43  
3.1.1 搭建Eureka服务治理中心 43  
3.1.2 服务发现 47  
3.1.3 多个服务治理中心实例 51  
3.2 Eureka治理机制 54  
3.2.1 基础架构 54  
3.2.2 服务治理中心工作原理 57  
3.2.3 Region和Zone 60  
3.2.4 Eureka关键源码解读 62  
3.2.5 Eureka使用注意点 69  
3.3 Eureka配置 69  
3.3.1 客户端服务注册配置 70  
3.3.2 客户端服务实例配置 71  
第4章 客户端负载均衡——Ribbon 73  
4.1 负载均衡概述 73  
4.2 初识Ribbon 74  
4.2.1 Ribbon概述 74  
4.2.2 Ribbon是如何实现负载均衡的 75  
4.3 Ribbon负载均衡器和策略 80  
4.3.1 负载均衡器 80  
4.3.2 负载均衡策略 84  
4.4 Ribbon服务实例清单维护 93  
4.4.1 获取服务实例清单 94  
4.4.2 更新服务实例清单 96  
4.4.3 服务实例的心跳监测 97  
4.4.4 IPing接口 99  
4.5 自定义Ribbon客户端 100  
4.5.1 全局配置 101  
4.5.2 局部定义 101  
4.6 Ribbon使用实践 103  
第5章 断路器——Hystrix 105  
5.1 概述 105  
5.1.1 熔断的概念 105  
5.1.2 服务降级 107  
5.1.3 Hystrix的功能简介 108  
5.2 入门实例 108  
5.3 Hystrix工作原理 112  
5.3.1 Hystrix命令 113  
5.3.2 缓存 114  
5.3.3 断路器 115  
5.3.4 隔离 119  
5.4 Hystrix实践 122  
5.4.1 使用Hystrix命令 123  
5.4.2 请求缓存 129  
5.4.3 请求合并 137  
5.4.4 线程池划分 145  
5.5 仪表盘 146  
5.5.1 单体监控 147  
5.5.2 Turbine聚合监控 151  
5.6 Hystrix属性配置 153  
5.6.1 命令属性配置 154  
5.6.2 线程池属性配置 157  
第6章 新断路器——Resilience4j 158  
6.1 断路器(CircuitBreaker) 160  
6.1.1 断路器配置和注册机 160  
6.1.2 断路器的状态 162  
6.1.3 使用断路器的实例 162  
6.1.4 异常处理 165  
6.1.5 拾遗 166  
6.2 限速器(RateLimiter) 168  
6.2.1 使用实践 168  
6.2.2 拾遗 170  
6.3 舱壁隔离(Bulkhead) 171  
6.3.1 使用舱壁隔离 171  
6.3.2 拾遗 173  
6.4 重试器(Retry) 173  
6.4.1 使用重试机制 173  
6.4.2 拾遗 175  
6.5 缓存(Cache) 176  
6.5.1 使用Resilience4j缓存 176  
6.5.2 拾遗 178  
6.6 时间限制器(TimeLimiter) 178  
6.7 组件混用 179  
6.8 使用Spring Boot 2的配置方式 181  
6.8.1 通过配置创建断路器 181  
6.8.2 通过配置创建限速器 183  
第7章 声明式调用——OpenFeign 185  
7.1 OpenFeign的使用 186  
7.1.1 入门实例 186  
7.1.2 常见的传参场景 188  
7.1.3 OpenFeign客户端接口的继承 190  
7.1.4 OpenFeign客户端的配置 191  
7.1.5 OpenFeign的全局配置 197  
7.2 配置Hystrix 199  
7.2.1 使用服务降级 200  
7.2.2 Hystrix中关于OpenFeign的其他配置 203  
7.2.3 使用建议 204  
7.3 使用Resilience4j调用OpenFeign接口 204  
第8章 旧API网关——Zuul 207  
8.1 什么是网关 208  
8.2 Zuul入门实例 209  
8.3 Zuul原理——过滤器 211  
8.3.1 过滤器设计和责任链 211  
8.3.2 开发过滤器 214  
8.3.3 Zuul自动装配的过滤器 218  
8.4 限流 220  
8.4.1 Resilience4j限速器限流 220  
8.4.2 spring-cloud-zuul-ratelimit限速 222  
8.5 动态路由 224  
8.5.1 动态路由原理 224  
8.5.2 动态路由实例 226  
8.6 灰度发布(金丝雀发布) 230  
8.6.1 标记微服务是否为灰色发布 230  
8.6.2 网关过滤 231  
8.7 使用Hystrix熔断 232  
第9章 新网关——Spring CloudGateway 235  
9.1 认识Gateway 236  
9.1.1 入门实例 237  
9.1.2 Gateway执行原理 238  
9.2 断言(Predicate) 242  
9.2.1 Before路由断言工厂 242  
9.2.2 After路由断言工厂 243  
9.2.3 Between路由断言工厂 244  
9.2.4 Cookie路由断言工厂 245  
9.2.5 Header路由断言工厂 246  
9.2.6 Host路由断言工厂 246  
9.2.7 Method路由断言工厂 247  
9.2.8 Path路由断言工厂 248  
9.2.9 Query路由断言工厂 249  
9.2.10 RemoteAddr路由断言工厂 250  
9.2.11 Weight路由断言工厂 250  
9.3 过滤器(Filter)概述 253  
9.4 内置过滤器工厂 253  
9.4.1 AddRequestHeader过滤器工厂 254  
9.4.2 AddRequestParameter过滤器工厂 254  
9.4.3 AddResponseHeader过滤器工厂 255  
9.4.4 Retry过滤器工厂 256  
9.4.5 Hystrix过滤器工厂 258  
9.4.6 RequestRateLimiter过滤器工厂 259  
9.4.7 StripPrefix过滤器工厂 262  
9.4.8 RewritePath过滤器工厂 263  
9.4.9 SetStatus过滤器工厂 264  
9.4.10 小结 265  
9.5 自定义过滤器 265  
9.5.1 自定义过滤器——使用Resilience4j限流 265  
9.5.2 全局过滤器——转发token 268  
9.5.3 过滤器的顺序 269  
9.6 Gateway知识补充 273  
9.6.1 基于服务发现的路由 273  
9.6.2 度量和动态更新路由 274  
第 10章 配置——Spring Cloud Config 277  
10.1 入门实例——使用Git仓库 277  
10.1.1 服务端开发 278  
10.1.2 客户端开发 280  
10.1.3 验证配置 281  
10.1.4 小结 282  
10.2 使用其他方式实现配置 282  
10.2.1 使用本地文件 282  
10.2.2 使用SVN配置 283  
10.2.3 使用数据库 284  
10.3 服务端的使用详解 286  
10.3.1 敏感配置加密和解密 286  
10.3.2 查看配置文件和监控端点 289  
10.3.3 安全认证 291  
10.3.4 高可用的Config配置 293  
第 11章 Spring Cloud Sleuth全链路追踪 295  
11.1 链路追踪的基本概念 295  
11.2 Spring Cloud Sleuth和Zipkin 297  
11.3 实例 298  
11.3.1 搭建Zipkin服务器 298  
11.3.2 搭建服务提供者和服务消费者 300  
11.3.3 搭建网关服务 303  
11.3.4 查看全链路追踪 304  
11.3.5 在链路中自定义样本标记属性 306  
11.4 持久化 308  
11.4.1 在数据库中存储链路样本 308  
11.4.2 在Elasticsearch中存储链路样本 309  
第 12章 微服务的监控——Spring Boot Admin 312  
12.1 本章实例简介 313  
12.2 URL注册方式 313  
12.2.1 Admin服务端开发 313  
12.2.2 Admin客户端开发 314  
12.2.3 查看Admin服务端监测平台 315  
12.3 服务发现注册方式 316  
12.4 使用Spring Security保护Admin服务端 319  
第三部分 分布式技术  
第 13章 生成唯*的ID——发号机制 323  
13.1 生成ID的常见办法 323  
13.1.1 使用UUID 324  
13.1.2 为什么不用UUID 324  
13.1.3 数据库自增长 325  
13.1.4 使用Redis生成ID 327  
13.1.5 时钟算法 329  
13.1.6 变异时钟算法——SnowFlake算法 331  
13.1.7 小结 334  
13.2 自定义发号机制 334  
第 14章 分布式数据库技术 337  
14.1 基础知识 337  
14.1.1 数据库的分表、分库和分区的概念 337  
14.1.2 Spring多数据源支持 339  
14.2 开发环境搭建 341  
14.2.1 SSM框架整合 342  
14.2.2 配置多数据源 345  
14.3 分片算法 350  
14.3.1 哈希分片之求余算法 351  
14.3.2 一致性哈希算法 352  
14.3.3 热点分配法 357  
14.4 分片中间件ShardingSphere 358  
14.4.1 概述 358  
14.4.2 ShardingSphere的重要概念 359  
14.4.3 ShardingSphere的分片 360  
14.4.4 实例 361  
14.4.5 结束语 363  
第 15章 分布式数据库事务 364  
15.1 强一致性事务 364  
15.1.1 两阶段提交协议——XA协议 365  
15.1.2 三阶段提交协议 371  
15.1.3 为什么微服务不适合使用强一致性事务 372  
15.2 弱一致性事务 373  
15.2.1 本节样例模型和冲正交易的概念 374  
15.2.2 使用状态表 375  
15.2.3 使用可靠消息源——RabbitMQ 376  
15.2.4 提高尝试次数和幂等性 380  
15.2.5 TCC补偿事务 381  
15.2.6 小结 383  
15.3 分布式事务应用的实践理论 383  
15.3.1 什么时候使用分布式事务 383  
15.3.2 数据修复思路 384  
第 16章 分布式缓存——Redis 387  
16.1 Redis的高可用 388  
16.1.1 哨兵模式 389  
16.1.2 Redis集群 394  
16.2 使用一致性哈希(ShardedJedis) 402  
16.3 分布式缓存实践 403  
16.3.1 大对象的缓存 403  
16.3.2 缓存穿透、并发和雪崩 404  
16.3.3 缓存实践的一些建议 406  
第 17章 分布式会话 407  
17.1 分布式会话的几种方式 407  
17.2 黏性会话 408  
17.3 服务器会话复制 408  
17.4 使用缓存(spring-session-data-redis) 409  
17.5 持久化到数据库 411  
第 18章 分布式系统权限验证 412  
18.1 Spring Security 412  
18.1.1 简单使用Spring Security 413  
18.1.2 使用自定义用户验证 415  
18.1.3 使用缓存共享实现分布式权限 421  
18.1.4 跨站点请求伪造(CSRF)攻击 423  
18.1.5 使用自定义页面 425  
18.2 自定义微服务权限控制 427  
18.2.1 基础包开发 428  
18.2.2 开发Eureka客户端 432  
18.2.3 网关开发 434  
18.2.4 服务调用 438  
18.3 OAuth 2.0概述 441  
18.3.1 OAuth的概念和流程 441  
18.3.2 使用JWT进行安全认证 443  
18.3.3 spring-security-oauth2 444  
18.4 Spring Cloud Security 445  
18.4.1 构建认证服务器 446  
18.4.2 开发SSO客户端 450  
18.4.3 测试 453  
第四部分 微服务系统实践  
第 19章 远程过程调用 459  
19.1 远程过程调用 459  
19.1.1 REST风格服务调用性能测试 459  
19.1.2 RPC入门 460  
19.1.3 RPC和REST风格服务调用的对比 461  
19.2 Thrift简介 462  
19.2.1 配置Thrift 462  
19.2.2 Thrift的数据结构和服务接口 463  
19.2.3 开发业务逻辑 464  
19.2.4 启动Thrift服务器 465  
19.2.5 Thrift客户端 466  
19.2.6 使用断路器保护服务调用 468  
19.3 RPC小结 469  
第 20章 微服务设计和高并发实践 470  
20.1 微服务设计原则 470  
20.1.1 服务拆分方法 470  
20.1.2 微服务的设计原则 471  
20.1.3 微服务架构 471  
20.2 高并发系统的一些优化经验 472  
20.2.1 提高性能 473  
20.2.2 服务高可用 479  
20.3 简易微服务系统实例 488  
20.3.1 服务治理中心(ms-eureka) 489  
20.3.2 搭建产品微服务(ms-product) 490  
20.3.3 网关微服务开发(ms-zuul) 498  
20.3.4 资金微服务(ms-fund) 508  
20.3.5 服务实例监测平台(ms-admin) 510  
20.3.6 Hystrix仪表盘(ms-dashboard) 511  
20.3.7 服务链路追踪(ms-sleuth) 512  

人民邮电出版社有限公司店铺主页二维码
人民邮电出版社有限公司 微信公众号认证
人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
扫描二维码,访问我们的微信店铺
随时随地的购物、客服咨询、查询订单和物流...

Spring Cloud微服务和分布式系统实践

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

打开微信,扫一扫

或搜索微信号:renyoushe
人民邮电出版社官方微信公众号

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏