zoukankan      html  css  js  c++  java
  • zipkin

    转:https://blog.csdn.net/liaokailin/article/details/52077620

    zipkin为分布式链路调用监控系统,聚合各业务系统调用延迟数据,达到链路调用监控跟踪。

    在复杂的调用链路中假设存在一条调用链路响应缓慢,如何定位其中延迟高的服务呢?

    • 日志: 通过分析调用链路上的每个服务日志得到结果
    • zipkin:使用zipkinweb UI可以一眼看出延迟高的服务

    zipkin主要涉及四个组件 collector storage search web UI

    • Collector接收各service传输的数据
    • Cassandra作为Storage的一种,也可以是mysql等,默认存储在内存中,配置cassandra可以参考这里
    • Query负责查询Storage中存储的数据,提供简单的JSON API获取数据,主要提供给web UI使用
    • Web 提供简单的web界面

    install

    执行如下命令下载jar包

    wget -O zipkin.jar 'https://search.maven.org/remote_content?g=io.zipkin.java&a=zipkin-server&v=LATEST&c=exec'

    其为一个spring boot 工程,直接运行jar

    nohup java -jar zipkin.jar & 

    访问 http://ip:9411

    使用zipkin涉及几个概念

    Span:基本工作单元,一次链路调用(可以是RPC,DB等没有特定的限制)创建一个span,通过一个64位ID标识它,
    span通过还有其他的数据,例如描述信息,时间戳,key-value对的(Annotation)tag信息,parent-id等,其中parent-id
    可以表示span调用链路来源,通俗的理解span就是一次请求信息

    Trace:类似于树结构的Span集合,表示一条调用链路,存在唯一标识

    Annotation: 注解,用来记录请求特定事件相关信息(例如时间),通常包含四个注解信息

    cs - Client Start,表示客户端发起请求

    sr - Server Receive,表示服务端收到请求

    ss - Server Send,表示服务端完成处理,并将结果发送给客户端

    cr - Client Received,表示客户端获取到服务端返回信息

    BinaryAnnotation:提供一些额外信息,一般已key-value对出现

  • 相关阅读:
    LeetCode 116. 填充每个节点的下一个右侧节点指针
    angluar 表单的验证 动态数据项表单验证
    Angular:ng-style,ng-class的使用
    1.splice(),slice(),split()快查
    js输入小写金额转大写
    Angular--CheckBox,checkbox多选,保存的时候用逗号隔开
    Angular--CheckBox
    Angular--Radio
    对于mysql中的group by分组后获取组内创建时间最大的那行数据
    GIT版本管理看这一篇就够了
  • 原文地址:https://www.cnblogs.com/wuxiang/p/8758492.html
Copyright © 2011-2022 走看看