万本电子书0元读

万本电子书0元读

顶部广告

掌握分布式跟踪:微服务和复杂系统性能分析电子书

暂无

售       价:¥

36人正在读 | 0人评论 6.2

作       者:(美)Yuri Shkuro(尤里·史库罗)

出  版  社:电子工业出版社

出版时间:2022-03-01

字       数:21.6万

所属分类: 科技 > 计算机/网络 > 计算机理论与教程

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
暂无
目录展开

内容简介

贡献者

前言

Ⅰ 引言

1 为什么需要分布式跟踪

微服务与云原生应用程序

什么是可观测性

微服务的可观测性挑战

传统的监控工具

指标

日志

分布式跟踪

我在跟踪领域的经历

为何编写本书

总结

参考资料

2 跟踪一次HotROD之旅

先决条件

从预打包的二进制文件运行

从Docker镜像运行

从源代码运行

启动Jaeger

初识HotROD

架构

数据流

上下文日志

span标记与日志

确定延迟的来源

资源使用属性

总结

参考资料

3 分布式跟踪基础

想法

请求相关性

黑盒推理

特定于域的模式

元数据传播

剖析分布式跟踪

采样

保留因果关系

请求间因果关系

跟踪模型

事件模型

span模型

时钟偏差调整

跟踪分析

总结

参考资料

Ⅱ 数据收集问题

4 OpenTracing的埋点基础

先决条件

项目源代码

Go开发环境

Java开发环境

Python开发环境

MySQL数据库

查询工具(curl或wget)

跟踪后端(Jaeger)

OpenTracing

练习1:Hello应用程序

用Go语言实现Hello应用程序

用Java语言实现Hello应用程序

用Python语言实现Hello应用程序

练习总结

练习2:第一个跟踪

步骤1:创建跟踪器实例

步骤2:启动span

步骤3:注释span

练习总结

练习3:跟踪函数和传递上下文

步骤1:跟踪单个函数

步骤2:将多个span合并为一个跟踪

步骤3:传播进程内上下文

练习总结

练习4:跟踪RPC请求

步骤1:拆解单体

步骤2:在进程之间传递上下文

步骤3:应用OpenTracing推荐的标记

练习总结

练习5:使用baggage

在Go中使用baggage

在Java中使用baggage

在Python中使用baggage

练习总结

练习6:自动埋点

Go中的开源埋点

Java中的自动埋点

Python中的自动埋点

练习7:额外练习

总结

参考资料

5 异步应用程序埋点

先决条件

项目源代码

Java开发环境

Kafka、ZooKeeper、Redis与Jaeger

Tracing Talk聊天应用程序

实现

运行应用程序

观察跟踪

使用OpenTracing埋点

Spring埋点

tracer resolver

Redis埋点

Kafka埋点

埋点异步代码

总结

参考资料

6 跟踪标准与生态系统

埋点形式

分析跟踪部署和互操作性

跟踪的五种含义

了解受众

生态系统

跟踪系统

X-Ray、Stackdriver等

标准项目

总结

参考资料

7 使用服务网格进行跟踪

服务网格

服务网格的可观测性

先决条件

项目源代码

Java开发环境

Kubernetes

Istio

Hello应用程序

使用Istio进行分布式跟踪

使用Istio生成服务图

分布式上下文和路由

总结

参考资料

8 关于采样

基于头部的一致性采样

概率采样

速率限制采样

保证吞吐量的概率采样

自适应采样

上下文敏感的采样

实时采样或调试采样

如何处理过采样

基于尾部的一致性采样

部分采样

总结

参考资料

Ⅲ 从跟踪中获取价值

9 跟踪的价值

作为知识库的跟踪

服务图

深度,路径感知服务图

检测架构问题

性能分析

关键路径分析

识别跟踪模式

范例

延迟直方图

长期性能分析

总结

参考资料

10 分布式上下文传播

布朗跟踪平面

Pivot Tracing

混沌工程

流量标记

生产环境测试

生产环境调试

在生产环境中进行开发

总结

参考资料

11 集成指标与日志

可观测性的三大支柱

先决条件

项目源代码

Java开发环境

在Docker中运行服务器

在Kibana中声明索引模式

运行客户端

Hello应用程序

与指标集成

通过跟踪埋点实现标准指标

向标准指标中添加上下文

上下文感知的指标API

与日志集成

结构化日志记录

将日志与跟踪上下文关联起来

上下文感知的日志API

在跟踪系统中捕获日志

是否需要单独的日志记录和跟踪后端

总结

参考资料

12 通过数据挖掘提炼洞见

特征提取

数据挖掘管道的组件

跟踪后端

跟踪完成触发器

特征提取器

聚合器

特征提取练习

先决条件

项目源代码

在Docker中运行服务器

在Elasticsearch中定义索引映射

Java开发环境

微服务模拟器

在Kibana中定义索引模式

span计数作业

跟踪完成触发器

特征提取器

观测趋势

谨防推断

历史分析

实时分析

总结

参考资料

Ⅳ 部署和维护跟踪基础设施

13 在大型组织中实施跟踪

为什么很难部署跟踪埋点

减少采用障碍

标准框架

内部适配器库

默认启用跟踪

monorepo

与现有的基础设施集成

从哪里开始

构建文化

解释价值

与开发人员工作流集成

跟踪质量指标

故障排除指南

跳出关键路径

总结

参考资料

14 分布式跟踪系统的底层架构

为什么需要自己“造轮子”

定制和集成

带宽成本

把控数据

押注新兴标准

架构和部署模式

基本架构:代理+收集器+查询服务

流式架构

多租户

安全

在多个数据中心运行

监控和故障诊断

弹性

过采样

调试跟踪

数据中心故障转移导致的流量峰值

无休止的跟踪

长跟踪

总结

参考资料

后记

参考资料

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部