BytePower 技术周刊 - 025
# BytePower 技术周刊 - 025
本期周刊是关于 可观测性 的一期专题周刊,可观测性是近几年在分布式系统中一个热点话题,Opentelemetry
基本是大家公认的一套规范,本期周刊收录几篇文章从多方面介绍一下 可观测性 和 Opentelemetry
,希望对大家有所帮助。但是想要跟深入了解和使用它,还需要你参考官方文档亲自 Code。
# 📘 封面
# 📖 文章
# 官方文档:Opentelemetry (opens new window)
OpenTelemetry, also known as OTel for short, is a vendor-neutral open-source Observability framework for instrumenting, generating, collecting, and exporting telemetry data such as traces
, metrics
, logs
. As an industry-standard it is natively supported by a number of vendors.
# Google Cloud DevOps 衡量:监控和可观测性 (opens new window)
DORA 的研究定义了以下术语:
- 监控是可帮助团队观察和了解其系统状态的工具或技术解决方案。监控基于收集一组预定义的指标或日志。
- 可观测性是可帮助团队有效调试其系统的工具或技术解决方案。可观测性基于对事先未定义的属性和模式的探索。
# 从 Opentracing、OpenCensus 到 OpenTelemetry,看可观测数据标准演进史 (opens new window)
Google 发表了论文《"Dapper - a Large-Scale Distributed Systems Tracing Infrastructure"》介绍他们的分布式跟踪技术,并认为分布式跟踪系统应该满足以下业务需求:
- 性能低损耗: 分布式跟踪系统对服务的性能损耗应尽可能做到忽略不计,尤其是那些对性能敏感的应用。
- 低侵入: 尽可能做到业务代码的低侵入或无侵入。
- 快速扩展:能够随着业务或微服务规模快速扩大。
- 实时展现:低延时采集数据,实时监控系统,对系统的异常状况作出快速的反应。
# OpenTelemetry 规范阅读 (opens new window)
# 2022,我们该如何理解可观测技术 (opens new window)
有心人可能已经发现,可观测问题正在悄然成为 IT 行业的热门话题。尤其是从 2021 下半年到今日的一年间,对可观测问题的讨论,不断见诸技术圈内,大有愈演愈烈之势。 从技术的角度看,这是因为微服务架构逐渐普及,导致可观测问题变得十分复杂。一个服务被拆分成数个黑盒的、虚拟的微服务,故障排除彻底成为一种折磨 ......
# 一文读懂可观测性与 Opentelemetry (opens new window)
管理学大师彼得德鲁克有一句话:“如果你无法衡量它,你就无法管理它”。在企业中,无论是管理人,还是管理事,抑或是管理系统,首先都需要衡量。衡量的过程其实是搜集信息的过程,有了足够的信息才能做出正确的判断,有了正确的判断才能做出有效的管理和行动方案。
# Go HTTP Server 基于 OpenTelemetry 使用 Jaeger - 代码实操 (opens new window)
链路描述 本文档代码通过上面这个图稍微简单讲解一下:
- C 代表客户端,S 代表服务端,F 代表方法
- 会有两个服务端 S 代表代码中的 svc1,S'代表代码中的 svc2
- S 收到请求后会开协程调用 Fa,然后调用 Fb
- Fb 会去跨服务请求 S'的接口
- S'收到请求后执行 Fc
# 扩展阅读
# 🧰 工具
# Amethyst (opens new window)
一款小巧的窗口管理工具,需要记忆一些快捷键。
# 👩🏻🎓 学习
# 回溯算法(Backtracking) (opens new window)
Backtracking is a general algorithm for finding solutions to some computational problems, notably constraint satisfaction problems, that incrementally builds candidates to the solutions, and abandons a candidate ("backtracks") as soon as it determines that the candidate cannot possibly be completed to a valid solution.
回溯算法一般用于解决一些求所有解、任意解的问题,需要多次尝试找到答案,一般有比较高的复杂度。解决实际问题时,要注意根据条件限制尝试的次数,进行算法优化。
- 典型的问题:全排列、N 皇后、数独等。
# 🐠 有趣的东西
# 地球时钟 (opens new window)
使用地球卫星照片,生成显示时间的数字时钟,还有动态壁纸。