`
wu.sheng
  • 浏览: 67011 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

skywalking 1.0-Final,如何追踪阻塞的调用?

 
阅读更多

       最近关注skywalking的爱好者们会发现,skywalking一直处于重构和编译失败的状态。这次专门发表这边文章,解释这次重构的原因。

       针对APM的应用监控,我们一般关注一下几个维度:

  • 应用出错的异常点
  • 应用调用速度缓慢的原因
  • 应用各程序内部调用的时间分布情况、TPS
  • 应用性能JVM相关参数和性能相关性
  • 应用性能改进的目标和建议

        这次的改造,主要针对第二点中,应用速度缓慢的问题。skywalking之前的版本,包括现在国内主流的APM厂商,都是采用在调用链入口调用结束后,组装JVM内的调用树结构,发送到服务端。这种方式有利于组装数据,但是如果出现线程竞争阻塞、死锁,或者超长任务拖慢集群性能的时候,发送时间要远远晚于实际问题的发生时间。

        我们采用全新的策略

  1. 保持原有的单个埋点进行单独发送的特性,即单个Span可以独立发送。
  2. 原有的一个埋点发送一次的策略,修改为埋点执行前(RequestSpan)和执行后(AckSpan)各发送一次。

        此时监控程序、或者skywalking的扩展程序,可以快速的识别,Span的Request和Ack的配对情况,如果Ack长时间的无法到达,已形成配对,则说明当前埋点出现了超长时间的阻塞性事务,需要关注和告警。

        此时,监控告警程序,需要在特定时间窗口内,缓存RequestSapn,已期待Ack的配对情况。这里会消耗大量的内存,目前没有特别好的方法,目前是期待快速的匹配和清除缓存的模式,提高性能。

        

0
0
分享到:
评论

相关推荐

    apache-skywalking-java-agent-8.13.0 apache-skywalking-apm-9.0.0

    Skywalking是分布式系统的应用程序性能监视工具,专为微服务,云原生架构和基于容器(Docker,K8S,Mesos)架构而设计,它是一款优秀的APM(Application Performance Management)工具,包括了分布式追踪,性能指标...

    skywalking-apm+skywalking-java-agent

    SkyWalking适用于分布式系统的应用程序性能监控工具,专为微服务、云原生和基于容器 (Kubernetes) 的架构而设计。 SkyWalking在8.8.0版本以后将agent进行了单独拆分,因此若要使用8.8.0版本以后的,需要下载apm和...

    apache-skywalking-java-agent-9.0

    apache-skywalking-java-agent-9.0

    apache-skywalking-apm-es7-8.7.0.tar.gz

    1. **分布式追踪**:SkyWalking 支持分布式系统的链路追踪,能够帮助开发者理解请求在各个服务间的传播路径,找出性能瓶颈。 2. **服务监控**:它提供服务和实例级别的监控,包括服务调用的延迟、成功率、QPS(每秒...

    apache-skywalking-java-agent-8.9.0

    3. **分布式追踪**:SkyWalking提供强大的分布式追踪能力,允许开发者查看整个微服务架构中的请求流转过程。通过Java代理,它可以自动收集服务间的调用链路,形成调用图,便于问题定位。 4. **服务网格支持**:在...

    apache-skywalking-apm-es7-8.5.0.tar.gz

    apache-skywalking-apm-es7-8.5.0.tar.gz

    skywalking的如下版本apache-skywalking-apm-bin-es7.rar

    skywalking的如下版本apache-skywalking-apm-bin-es7.rar skywalking的如下版本apache-skywalking-apm-bin-es7.rar skywalking的如下版本apache-skywalking-apm-bin-es7.rar skywalking的如下版本apache-skywalking-...

    skywalking-oap-server-9.4离线镜像可安装版本

    skywalking-oap-server-9.4离线镜像可安装版本

    apache-skywalking-apm-bin-es7-8.0.1.tar.gz

    1. **分布式追踪**:SkyWalking能够收集并分析应用之间的调用链数据,帮助开发者理解请求在系统中的传播路径,定位性能瓶颈和故障源。 2. **性能监控**:提供服务、服务实例和端点的性能指标,如响应时间、成功率、...

    最新版 apache-skywalking-apm-es7-8.2.0.tar.gz

    3. **分布式追踪:** SkyWalking 支持 OpenTracing 和 OpenCensus 标准,可以与其他兼容的客户端库集成,实现全链路追踪。 4. **告警和通知:** 当系统出现异常或达到预设阈值时,SkyWalking 可以触发告警并发送...

    apache-skywalking-java-agent 8.8.0-9.2.0,一共12个版本

    apache-skywalking-java-agent-8.8.0.tgz apache-skywalking-java-agent-8.9.0.tgz apache-skywalking-java-agent-8.10.0.tgz apache-skywalking-java-agent-8.11.0.tgz apache-skywalking-java-agent-8.12.0.tgz ...

    apache-skywalking-apm-bin-es7.tar.gz

    skywalking8.1.0

    apache-skywalking-apm-8.1.0.tar.gz

    1. **分布式链路追踪**:SkyWalking 提供了强大的分布式追踪能力,可以追踪跨多个服务的请求流程,帮助开发者理解请求在分布式系统中的传播路径,找出性能瓶颈。 2. **性能监控**:它能够实时监控应用程序的性能...

    apache-skywalking-apm-es7-8.7.0

    1. **链路追踪**:SkyWalking 提供了强大的分布式跟踪能力,可以追踪微服务间的调用关系,帮助开发者识别和定位性能瓶颈。它通过在请求中插入元数据(如span、trace ID等)来记录服务间的调用链路。 2. **服务网格...

    apache-skywalking-apm-bin-es7-final.tar.gz

    2. **追踪分析**:通过SkyWalking UI,可以查看服务间的调用链路,追踪请求路径,找出延迟高的环节。 3. **性能监控**:在仪表盘中查看各项性能指标,如响应时间、QPS、错误率等,及时发现异常。 4. **告警设置**...

    apache-skywalking-apm-8.5.0.tar.gz

    1. **分布式追踪**:SkyWalking 可以收集服务间的调用链数据,提供可视化展示,帮助理解服务间的关系和请求流。 2. **性能监控**:通过指标如响应时间、吞吐量等,实时监控服务性能,发现潜在的性能瓶颈。 3. **告...

    apache-skywalking-apm-6.6.0.tar

    2. **全链路追踪**:通过Tracing技术,SkyWalking能够展示服务间的调用关系,形成服务拓扑图,便于理解请求在整个系统中的流转过程,这对于问题排查非常有帮助。 3. **服务治理**:SkyWalking提供了丰富的服务治理...

    skywalking-springmvc-1.0-SNAPSHOT.war

    # 分布式链路追踪_skywalking_学习(1)

    skywalking安装包 skywalking-es7-8.7.0

    - **分布式追踪**:SkyWalking 可以收集服务间的调用链路数据,展示服务拓扑图,帮助定位性能瓶颈。 - **性能监控**:包括请求延迟、QPS(每秒查询量)、TP99(99% 请求的响应时间)等关键指标。 - **异常检测**...

    centos apache-skywalking-apm-9.7.0.tar 安装包

    一旦应用程序连接到 SkyWalking,你可以在 Web 界面上看到监控数据,包括服务拓扑图、服务实例、调用链、性能指标等。这些数据可以帮助你快速定位性能瓶颈,优化服务。 七、日志与告警 SkyWalking 支持自定义日志...

Global site tag (gtag.js) - Google Analytics