微服务全链路追踪

news/2025/1/15 17:19:31/文章来源:https://www.cnblogs.com/zongzw/p/18242178

随着现代应用微服务化,客户端的请求往往需要服务器端多个组件的协调工作。
事务的处理是由分布式的服务架构完成,在这个过程中,问题的定位变得较为困难,我们需要梳理组件之间的依赖,并准确定位到问题所在。

这时候我们需要借助一些手段实现问题的定位和跟踪。

通常的做法有两种:

  • 静态链路拓扑绘制
    在系统交付之前,我们需要对系统的各个组件及相互关系有个比较清晰的认识,能够绘制并展示各个模块的调用关系。
    通过挥着组件链路拓扑能够帮助我们从理性的角度白盒方式定位问题。
    这个思路适合于业务开发团队,因为自己对自己的系统有足够清晰的认识,能够更快速定位问题。
  • 动态链路跟踪
    通过在日志中添加traceID的方式跟踪调用关系。各个模块、组件运行过程中都使用同一个ID,这样方便可视化整个调用链路。
    除了添加traceID这种针对单次request的定位能力,我们还可以添加模块标识。显式的勾勒出组件依赖关系。
    不同组件通过特定的日志收集工具将日志汇总到ELK统一日志平台实现检索。

这里的4个策略,实际就是以上两种做法。

追踪的可以不止链路(日志),也可以是metrics,运行指标。
例如某个模块的性能指标变差,也是可以通过链路追踪来解决的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/723113.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言中的数据类型及其转换

目录计算机中的数据类型整型数据之间的转换相同字长之间的转换小字长转大字长大字长转小字长int、float、double之间的转换float->doubledouble->floatfloat/double->intint->floatint->double 计算机中的数据类型 计算机中的数据以二进制的形式存储在寄存器或存…

DBAPI 安装部署standalone 数据API接口发布平台

DBAPI 项目地址:https://gitee.com/freakchicken/db-api 项目简介:零代码开发api服务,只需编写sql,就可以生成http api服务。支持api动态创建,兼容多种数据库。 适用于BI报表、数据可视化大屏的后端接口快速开发。 旨在为企业数据服务的发布提供完整解决方案 一、下载安装…

wu

转载自 他是 ISIJ 第四名,也是在线知名题库的洛谷“网红”。 2024年全国青少年信息学奥林匹克竞赛冬令营(WC)上,以优秀成绩斩下第一名年仅六年级的 $liuyi0905$,成为最夺目的选手之一。 而且虽然是六年级的选手,但他取得优异成绩后,不少网友并不感到陌生,纷纷留言: 这…

如何阅读MTF图表

前言 1943年——就在二战方酣的困顿时期——蔡司(Zeiss)发展出一套称为「调制传递函数」(德:Modulationsbertragungsfunktion;英:Modulation Transfer Function, MTF;日:変调伝达关数)的科学程序,用来评量镜头的影像品质。光学仪器业者、相机镜头制造商欣然拥抱这项新…

openGauss-1主2从1级联回切

假设omm1 omm2 omm4 是idc1,omm3 是idc2 模拟IDC1 全挂:手动将级联节点提升为主:此时idc1正常了,需要加回集群: Omm1 buildOmm2 buildOmm4 build 之后启omm3 的crontab,靠cm去选主检查新主的数据:注意点: CM 起来后不能build了,所以要先build再启CM本文来自博客园,作者…

实例:vue

实例:vue.js实现模态窗口(弹窗)| Id | Title | DateAdded | SourceUrl | PostType | Body | BlogId | Description | DateUpdated | IsMarkdown | EntryName | CreatedTime | IsActive | AutoDesc | AccessPermission | | -------------| -------------| -------------| -----…

同步mysql数据到ElasticSearch的最佳实践

同步mysql数据到ElasticSearch的最佳实践| Id | Title | DateAdded | SourceUrl | PostType | Body | BlogId | Description | DateUpdated | IsMarkdown | EntryName | CreatedTime | IsActive | AutoDesc | AccessPermission | | -------------| -------------| ------------…

开源无代码 / 低代码平台 NocoBase 1.0.1-alpha.1: 区块支持高度设置

NocoBase 是一个极易扩展的开源无代码开发平台。完全掌控,无限扩展,助力你的开发团队快速响应变化,显著降低成本,不必投入几年时间和数百万资金研发,只需要花几分钟部署 NocoBase。 NocoBase 中文官网 官方文档 在线 Demo 新特性 区块支持高度设置(#4441)参考文档:区块…

Apifox安装使用

下载双击安装登录后,查看本地Mock快捷请求测试复制url到浏览器测试

机器学习实践——支持向量机

一.什么是支持向量机 支持向量机(SVM)是一种广泛使用的监督学习方法,主要用于分类和回归分析。它的基本原理是找到一个超平面(在二维空间中是一条直线),以最大化不同类别之间的边界。以下是SVM的关键概念:超平面:决策边界,用于分类的直线或平面。边界(Margin):从超…

软件工程-五 过程

软件工程-五 过程 做过程不是做工程 软件工程这个概念被提出的时候大概是在20个世纪60年代末。它作为成熟的概念的标志是软件工程的瀑布模型的提出。 瀑布模型将软件开发的过程分成需求、分析、设计、开发和测试五个主要阶段,其主要环节关系表现为如下的这样一种形态在瀑布模…

centos tream 9安装dingding

https://github.com/zhullyb/dingtalk-for-fedora/blob/master/README_zh.md 用deb包转成rpm,然后用dnf安装rpm即可 dingtalk-for-fedora提供了如何转化,需要了解rpmrebuild如何使用