Zipkin由以下四个部分组成:
collectorstoragesearchweb UI
Zipkin收集器
一旦跟踪数据到达Zipkin Collector守护进程,Zipkin Collector将对其进行检查、存储和索引以供查询 。
仓库
Zipkin最初是为了在Cassandra中存储数据而构建的,因为Cassandra易于跨站点,支持灵活的模式,并且在Twitter内部被广泛使用 。在Cassandra之外 , 原生支持ElasticSearch和MySQL 。它可以作为第三方扩展提供给其他后端 。
Zipkin查询服务
一旦数据被存储和索引,就需要一种方法来提取它 。查询守护进程提供了一个简单的JSON API方法来查询和获取跟踪数据 。API的主要消费者是Web UI 。
软件工程师
创建了一个用户图形界面,为跟踪数据提供了一个漂亮的视图 。web提供了一种基于服务、时间和注释查看跟踪数据的方法 。注意:UI没有内置认证功能 。
Spring cloud提供spring-cloud-sleuth-zipkin,方便zipkin实现的集成(指的是zipkin客户端,不是Zipkin服务器) 。这个jar包可以通过spring-cloud-starter-zipkin依赖关系引入 。
根据传输方式,springcloud官方分为三种启动服务器的方式:Sleuth与Zipkin通过HTTP , Sleuth与Zipkin通过Spring Cloud Stream,Spring Cloud Sleuth Stream Zipkin Collector 。
由于HTTP传输的以下缺点:第一,每次传输都涉及到连接和传输的过程;第二,当Zipkin服务器关闭或重启时,客户端收集的信息会被http丢失 。在这里,可以通过使用socket或其他更高效的通信方式 , 以及使用信息的异步传输在Zipkin客户端和服务器之间添加MQ来解决 。
在信息传输中添加MQ
要将http模式改为MQ通信,需要将原来依赖的io.zipkin.java:zipkin-server改为spring-cloud-sled-zipkin-stream和spring-cloud-starter-stream-rabbit 。
呼叫链跟踪系统(二):Cat简介(1)概述
CAT(Central Application Tracking)是基于Java的实时应用监控平台,为美团点评提供全面的实时监控和报警服务 。CAT的原型和概念来自易贝的CAL系统,该系统最初是由吴琦民在大众点评工作期间设计和开发的 。此前,CAT不仅增强了CAL系统的核心模型,还增加了更丰富的报告 。CAT提供Java、C/C、Node.js、Python、Go等多语言客户端 。,广泛应用于中间件框架(MVC、RPC、数据库、缓存等 。),并提供系统性能指标、健康状态、监控和报警等 。针对美团点评各业务线 。自2014年开源以来,除了美团点评,CAT已经应用在携程、陆金所、猎聘、Hiring.com、寻找Steel.com等多家互联网公司的制作环境中 。该项目的开源地址是https://github.com/dianping/cat/.
CAT的一大优势在于它是一个实时系统 。大多数CAT系统都是分钟级的统计,但是从数据产生到服务器处理结束都是秒级的 。秒级的定义是48分40秒 。基本上可以看到48分38秒的数据 , 整体报表的统计粒度是分钟级的 。第二个好处是监测数据全统计 , 客户端预计算;对链路数据进行采样和计算 。卡特彼勒产品价值
减少故障发现时间降低故障定位成本辅助应用程序优化
卡特彼勒优势
实时处理:信息的价值会随时间锐减,尤其是事故处理过程中全量数据:全量采集指标数据,便于深度分析故障案例高可用:故障的还原与问题定位,需要高可用监控来支撑故障容忍:故障不影响业务正常运转、对业务透明高吞吐:海量监控数据的收集 , 需要高吞吐能力做保证可扩展:支持分布式、跨 IDC 部署,横向扩展的监控系统
(2)卡特彼勒的总体设计
主要分为三个模块:猫-客户端、猫-消费者、猫-家 。
Cat-client 提供给业务以及中间层埋点的底层SDK 。Cat-consumer 用于实时分析从客户端提供的数据 。Cat-home 作为用户给用户提供展示的控制端 。
在实际的开发部署中,CAT-consumer和Cat-home部署在一个JVM内部,每个CAT服务器既可以作为消费者,也可以作为家,这样不仅可以减少整个层次结构,还可以增加系统的稳定性 。
在实际的开发部署中 , cat-consumer和cat-home部署在一个jvm内部,每个cat服务器既可以作为消费者,也可以作为家,这样不仅可以减少整个cat的层次结构 , 还可以增加整个系统的稳定性 。
上图是猫目前多机房的整体结构:
路由中心是根据应用所在机房信息来决定客户端上报的CAT服务端地址每个机房内部都有的独立的原始信息存储集群HDFScat-home可以部署在一个机房也可以部署在多个机房,在做报表展示的时候 , cat-home会从cat-consumer中进行跨机房的调用 , 将所有的数据合并展示给用户实际过程中,cat-consumer、cat-home以及路由中心都是部署在一起,每个服务端节点都可以充当任何一个角色
- 螃蟹脚的功效与作用
- 凯旋门是什么牌子的包包 圣罗兰的包包辨别真假
- 百度地图如何开启自动省电模式?百度地图开启自动省电模式的方法
- 海底的生物有什么
- 微光怎么看自己的视频播放 微光怎么看自己的视频
- wps中怎么使用自带论文查重功能?wps中使用自带论文查重功能的方法
- 怎样挑选石斛最好?
- 西凤酒是哪个省的
- 日本人的英文 怎么造句呢
- 颜色的名称
