0
点赞
收藏
分享

微信扫一扫

微服务架构 | 10. 分布式追踪

10. 分布式追踪


前言

参考资料
《Spring Microservices in Action》
《Spring Cloud Alibaba 微服务原理与实战》
《B站 尚硅谷 SpringCloud 框架开发教程 周阳》

微服务的调试问题会比较复杂,可以使用分布式追踪解决;


1. 分布式追踪的基本概念

1.1 该技术的提出背景

  • 在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的的服务节点调用来协同产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一环出现高延时或错误都会引起整个请求最后的失败;

1.2 分布式追踪的几种不同方向

  • 追踪日志链 -> Sleuth:使用一个追踪 ID 将跨多个服务的日志串联起来
  • 日志聚合 -> Papertrail:将所有服务实例的日志流到一个集中的聚合点;
  • 可视化事务流 -> Zipkin
  • 正好对应下面将要介绍的三种技术;

1.3 日志聚合架构的概念图

日志聚合架构的概念图

1.4 几种开源的日志聚合产品

产品名称实现模式备注
Elasticsearch;Logstash;Kibana (ELK)开源;商业;通常实施与内部部署通用搜索引擎;可以通过 ELK 技术栈进行日志聚合;需要最多的手工操作
Graylog开源;商业;内部部署设计为在内部安装的开源平台
Splunk商业;内部部署和基于云最古老且最全面的日志管理和聚合工具;最初是内部部署,后来提供云服务
Sumo Logic免费增值模式;商业;基于云免费增值模式/分层定价模型;仅作为云服务运行;需要用公司的工作账户去注册
Papertrail免费增值模式;商业;基于云免费增值模式/分层定价模型;仅作为云服务运行;

1.5 目前几种流行的分布式追踪组件对比

名称厂商特点(优点)缺点
Spring Cloud SleuthSpring Cloud
Papertrail
Zipkin

2. Spring Cloud Sleuth

  • 即:使用追踪D将跨多个服务的事务链接在一起;
  • 点击访问:;

3. Papertrail

  • 即:来自多个服务的日志数据聚合为一个可搜索的源 ;
  • 点击访问:;

4. Zipkin

  • 即:可视化跨多个服务的用户事务流,并理解事务每个部分的性能特征 ;
  • 点击访问:;


最后

新人制作,如有错误,欢迎指出,感激不尽!
欢迎关注公众号,会分享一些更日常的东西!
如需转载,请标注出处!
举报

相关推荐

0 条评论