什么是 Trace Profiling
· 阅读需 6 分钟
Skywalking 和 Kindling-OriginX 都对Trace Profiling做了定义,两者想要实现的目标是一致的,都是想看清楚Trace在某个环节到底是如何执行的,只是工作在不同层次,能够反应不同的问题。
Skywalking 的 Trace Profiling 工作原理是在代码层次上,看出每个线程周期性时间节点在代码上干什么,同时与Trace关联。
Kindling-OriginX 的 Trace Profiling 工作原理是在内核层次上,看出每个线程从资源上在干什么(在CPU上执行,网络等待、IO操作等),同时与Trace关联。
Trace Profiling 目标
在现代软件系统架构中,性能不仅仅是一个指标,它直接关系到用户体验和系统的可靠性。技术团队经常需要回答这样的问题:应用为什么这么慢?为什么会在这个时间点出现延迟?出现故障的原因到底是什么?故障时刻到底发生了什么?而Trace Profiling 就是一种可帮助我们找到这些问题答案的性能分析方法之一。
Trace Profiling 是一种详尽的性能分析方法,它通过记录软件运行时的具体事件来创建一个执行的时间线。这些事件可以包括函数调用、线程切换、I/O操作等。与传统的Sampling Profiling相比,Trace Profiling 提供了更细粒度的数据,使开发者能够精确地看到程序在任何给定时间点正在做什么。