展开全部

主编推荐语

抽丝剥茧Alibaba Sentinel,深度解析微服务高并发流量治理,为微服务保驾护航。

内容简介

本书分为14章,涵盖的知识主要包括:限流与熔断等基础概念、Sentinel的特性与性能压测,Sentinel概念、核心类与数据结构,Sentinel整体工作流程,资源指标数据统计,限流与流量效果控制,熔断降级与熔断器,授权与系统自适应功能,扩展Sentinel实现开关降级,Sentinel动态数据源,Sentinel适配主流框架的实现原理,热点参数限流,集群限流,异步调用链的支持,资源指标数据的收集与持久化。

本书内容丰富,概念通俗易懂,让你不仅能够深入理解Sentinel的实现原理,还能够从Sentinel中学习到一些技术,如Java SPI的应用、责任链设计模式的应用、高并发性能优化、滑动窗口的实现、匀速限流与冷启动算法、信号量隔离的目的与实现等。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 引言 笔者经历的一次服务雪崩
  • 第1章 基础知识
  • 1.1 服务降级、限流、熔断、流量效果控制
  • 1.1.1 限流降级
  • 1.1.2 熔断降级
  • 1.1.3 开关降级
  • 1.2 Sentinel的特性
  • 1.3 Sentinel性能压测
  • 1.3.1 JMH基准测试
  • 1.3.2 使用JMH进行Sentinel压测
  • 1.4 小结
  • 第2章 了解概念与核心类
  • 2.1 了解Sentinel的一些概念
  • 2.1.1 资源、规则、资源指标数据
  • 2.1.2 调用链与调用树
  • 2.1.3 处理器插槽
  • 2.2 资源指标数据统计相关类
  • 2.2.1 ResourceWrapper
  • 2.2.2 Node
  • 2.3 调用链上下文与入口类
  • 2.3.1 Context
  • 2.3.2 Entry
  • 2.3.3 调用树与ROOT节点
  • 2.4 处理器插槽:ProcessorSlot
  • 2.5 小结
  • 第3章 了解整体工作流程
  • 3.1 SPI在Sentinel中的应用
  • 3.1.1 Java SPI实现原理与适用场景
  • 3.1.2 Java SPI在Sentinel中的应用
  • 3.1.3 自定义组装ProcessorSlotChain
  • 3.2 责任链模式在Sentinel中的应用
  • 3.3 Sentinel的整体工作流程分析
  • 3.4 小结
  • 第4章 资源指标数据统计
  • 4.1 基于滑动窗口实现资源指标数据统计
  • 4.1.1 Bucket
  • 4.1.2 滑动窗口
  • 4.1.3 WindowWrap
  • 4.1.4 通过时间戳定位Bucket
  • 4.1.5 获取当前时间戳的前一个Bucket
  • 4.2 资源指标数据统计全解析
  • 4.2.1 节点选择器插槽
  • 4.2.2 ClusterNode构造器插槽
  • 4.2.3 资源指标数据统计插槽
  • 4.2.4 资源指标数据的收集过程
  • 4.3 小结
  • 第5章 限流
  • 5.1 限流功能实现原理
  • 5.1.1 限流规则
  • 5.1.2 限流规则加载器
  • 5.1.3 限流处理器插槽
  • 5.1.4 限流规则检查器
  • 5.2 流量效果控制
  • 5.2.1 经典限流算法
  • 5.2.2 流量效果控制器
  • 5.2.3 快速失败流量效果控制器
  • 5.2.4 匀速限流效果控制器
  • 5.2.5 冷启动限流效果控制器
  • 5.3 小结
  • 第6章 熔断降级
  • 6.1 旧版熔断降级
  • 6.1.1 熔断降级规则
  • 6.1.2 熔断降级的实现原理
  • 6.2 新版熔断降级
  • 6.2.1 旧版熔断降级的不足
  • 6.2.2 新版本的改进
  • 6.2.3 熔断器的实现原理
  • 6.3 熔断器
  • 6.3.1 抽象熔断器
  • 6.3.2 异常熔断器
  • 6.3.3 慢请求熔断器
  • 6.4 小结
  • 第7章 授权与系统自适应
  • 7.1 授权功能的实现原理
  • 7.1.1 授权规则
  • 7.1.2 授权处理器插槽
  • 7.1.3 授权规则检查器
  • 7.2 系统自适应功能的实现原理
  • 7.2.1 系统自适应限流规则
  • 7.2.2 系统自适应限流判断流程
  • 7.2.3 获取系统的平均负载和CPU使用率
  • 7.2.4 checkBbr
  • 7.3 小结
  • 第8章 实现开关降级
  • 8.1 使用AOP实现开关降级
  • 8.2 扩展Sentinel实现开关降级
  • 8.3 小结
  • 第9章 动态数据源
  • 9.1 实现规则动态配置的两种方式
  • 9.2 使用Redis动态数据源
  • 9.3 动态配置的实现原理
  • 9.3.1 SentinelProperty
  • 9.3.2 ReadableDataSource
  • 9.4 基于Spring Cloud动态配置实现动态数据源
  • 9.5 小结
  • 第10章 适配主流框架
  • 10.1 适配Spring MVC框架
  • 10.1.1 使用步骤
  • 10.1.2 适配原理
  • 10.2 适配OpenFeign框架
  • 10.2.1 使用步骤
  • 10.2.2 Sentinel与OpenFeign整合的实现原理
  • 10.3 适配Dubbo框架
  • 10.3.1 使用步骤
  • 10.3.2 适配原理
  • 10.4 注解切面
  • 10.4.1 @SentinelResource
  • 10.4.2 SentinelResourceAspect
  • 10.5 小结
  • 第11章 热点参数限流
  • 11.1 热点参数限流功能的实现
  • 11.1.1 热点参数指标数据统计
  • 11.1.2 热点参数限流的实现原理
  • 11.2 流量效果控制
  • 11.2.1 快速失败
  • 11.2.2 匀速排队
  • 11.3 小结
  • 第12章 集群限流
  • 12.1 本地限流与集群限流
  • 12.2 集群限流的两种模式
  • 12.2.1 嵌入式模式
  • 12.2.2 独立应用模式
  • 12.3 集群限流功能的实现
  • 12.3.1 集群限流规则
  • 12.3.2 集群限流规则的动态配置
  • 12.3.3 集群限流客户端配置
  • 12.3.4 集群限流服务端配置
  • 12.3.5 动态配置为嵌入式模式提供支持
  • 12.3.6 集群限流核心类介绍
  • 12.3.7 集群限流客户端的实现
  • 12.3.8 集群限流服务端的实现
  • 12.3.9 集群限流指标数据统计的实现
  • 12.4 小结
  • 第13章 异步调用链的支持
  • 13.1 Sentinel异步调用链的支持
  • 13.2 适配Reactor框架的实现原理
  • 13.2.1 Reactive Streams规范
  • 13.2.2 Reactor发布-订阅流程
  • 13.2.3 Reactor响应式流的构造原理
  • 13.2.4 Reactor的Context传递过程
  • 13.2.5 Sentinel适配Reactor框架的原理
  • 13.3 适配WebFlux框架的实现原理
  • 13.4 小结
  • 第14章 Sentinel Dashboard
  • 14.1 资源指标数据收集的实现原理
  • 14.2 如何将资源指标数据输出到metrics日记文件中
  • 14.3 如何持久化资源指标数据
  • 14.4 小结
  • 结束语
展开全部

评分及书评

评分不足
2个评分
  • 用户头像
    给这本书评了
    5.0

    随着微服务的发展及 DDD 领域驱动设计的兴起,越来越多的企业开始使用微服务架构。无论是项目重构,还是新项目的开发,即使项目初期没有多大的流量,但从长远考虑,企业也基本会优先使用微服务架构。但 “鱼和熊掌不可兼得”,项目微服务化在提升开发效率及降低后期维护成本的同时,也加大了服务部署运维及问题排查的难度,并且容易导致服务崩溃出现级联效应,也就是 “服务雪崩”。

      转发
      评论

    出版方

    电子工业出版社

    电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。