全链路监控 内容分享
文章平均质量分 94
全链路监控 内容分享
之乎者也·
机车疾驰在路上,代码飞舞在指尖,热血与逻辑交织,创造属于我的数字世界。
展开
-
架构设计内容分享(一百九十三):全链路追踪在腾讯云的落地思考与实践
随着微服务以及容器技术的发展,系统软件的构建方式也随之发生了改变,微服务调用关系错综复杂,传统的监控方案很难满足当下应用场景的需求,指标、链路追踪以及日志目前已经成为了云原生应用的“必备品”,当把它们集成在一起时,需要拥有一个更加成熟的现代化可观测体系来支撑,以便了解应用系统内发生的事情。通过可观测性体系的建立,我们可以更好的去洞察监控数据,从而能够更快速的做问题定界以及根因定位,降低 MTTR。随着腾讯云的快速发展,越来越多的企业客户选择腾讯云作为其业务运行的基础设施。原创 2024-02-14 22:12:12 · 812 阅读 · 0 评论 -
架构设计内容分享(一百八十九):架构的管理和监控
构建一个辅助服务,代表消费者使用服务或应用程序发送网络请求。进程外的代理服务(之前介绍中间件的时候也提到了,很多框架层面的事情可以以软件框架的形式寄宿在进程内,也可以以独立的代理形式做一个网络中间件)。这里的大使模式意思就是这么一个网络代理进程,用于和远端的服务进行通讯,完成下面的工作:服务路由、、服务熔断、服务跟踪、服务监控、服务授权、数据加密、日志记录。由于是独立进程的网络服务,所以这个模式适合于我们有多语言多框架都需要干同样的事情,那么我们的框架中客户端部分的很多工作可以移出来放到大使服务中去。原创 2024-02-14 11:14:29 · 1061 阅读 · 0 评论 -
架构设计内容分享(一百七十九):初探分布式链路追踪
可观察性不单是一套理论框架,而且并不强制具体的技术规格。其核心在于鼓励团队内化可观察性的理念,并确保由研发人员构建的应用程序具备可观察性。在学术领域中,尽管“可观测性”这一术语是近年来从控制理论中引进的新词,但实际上,它在计算机科学领域已有深厚的实践基础。学者们通常会把可观测性细化为三个更具体的研究方向:事件日志、链路追踪和聚合度量。这三个领域虽然各有侧重点,但并非完全孤立,它们之间存在着天然的交集与互补性。原创 2024-02-13 15:14:36 · 979 阅读 · 0 评论 -
全链路内容分享(十):全链路追踪在腾讯云的落地思考与实践
从应用拓扑到调用链,实现链路的错、慢下钻分析,这是一个经典的使用可观测平台实现的产品能力,通过拓扑图可以看到有异常的应用信息,选中该应用之后,可以关联到调用链的明细的数据,在调用链的界面我们可以看到出现了慢的调用,或者是错误的调用,打开调用链的详情之后,可以进行下钻分析,看到此次调用的请求参数,以及调用堆栈和运行时产生的异常信息。如果在前端浏览器,或者小程序侧作为第一跳产生这个 TraceId,那么就可以实现前后端的调用链的互通,在客户端的视角,就可以看到完整的服务端的调用过程。原创 2024-02-11 22:37:33 · 938 阅读 · 0 评论 -
全链路内容分享(九):全链路压测平台(Quake)在美团中的实践
最后,总结一下做 Quake 这个项目的一些心得。原创 2024-02-11 22:21:01 · 1023 阅读 · 0 评论 -
全链路内容分享(八):有赞全链路压测引擎的设计与实现
原生 Gatling 是将压测日志写入本地日志文件的,而在分布式中,如果每个压力注入器都把日志写在本地,则为了基于所有日志分析生成压测报告,我们需要首先收集分散在各个压力注入器中的日志文件,这样显然是低效的。Maxim 目前还是个单打独斗的产品,未来我们希望与大数据平台、运维平台等系统打通,让 Maxim 逐渐进化为一个一站式的压测平台,并引入更多新特性,如压测过程和压测报告的实时计算和展示等等。Maxim 状态机是 Maxim 分布式的核心,控制中心和各个 Agent 的行为都受状态机变化的影响。原创 2024-02-11 22:09:22 · 826 阅读 · 0 评论 -
全链路内容分享(七):什么是SkyWalking?
这种方案目前也是有很多企业在用,但是作为程序员要的追逐一些新奇的技术,Skywalking作为后起之秀也是值得大家去学习的。skywalking是一个优秀的国产开源框架2015年由个人吴晟(华为开发者)开源 ,2017年加入Apache孵化器。短短两年就被Apache收入麾下,实力可见一斑。skywalking支持dubbo,SpringCloud,SpringBoot集成,代码无侵入,通信方式采用GRPC,性能较好,实现方式是java探针,支持告警,支持JVM监控,支持全局调用统计等等,功能较完善。原创 2024-02-11 21:15:35 · 947 阅读 · 0 评论 -
全链路内容分享(六):使用Skywalking进行链路追踪
它可以将从不同格式的数据源收集到的数据转换为统一的格式,使其易于处理和分析。官方样本:https://github.com/apache/skywalking/blob/master/test/e2e-v2/cases/vm/prometheus-node-exporter/otel-collector-config.yaml。是collector的扩展,要注意Extension不处理 otel 的数据,他负责处理的是一些类似健康检查服务发现,压缩算法等等的非 otel 数据的扩展能力。原创 2024-02-11 20:52:46 · 1290 阅读 · 0 评论 -
全链路内容分享(五):Skywalking实现Dubbo微服务链路追踪
前面我给大家分享了关于分布式链路追踪的基本原理和的k8s部署玩法,如果还没来得及看的朋友可以看我上两篇文章。今天要给大家分享是我们日常工作中最常见的一种场景,那就是部署在k8s环境下的,要接入的具体玩法,通过这个过程咱们可以更深入的理解进行数据采集的逻辑,也能更深刻地从运维角度理解日常工作中所写的Java微服务被无侵入的方式接入分布式链路追踪系统的过程!原创 2024-02-11 20:46:35 · 1373 阅读 · 0 评论 -
全链路内容分享(四):分布式链路追踪原理详解及SkyWalking、Zipkin介绍
链路数据采集tracing(调用链数据)和metric(指标)信息并上报,上报通过HTTP或者gRPC方式发送数据到Skywalking Collector: 链路数据收集器,对agent传过来的tracing和metric数据进行整合分析通过Analysis Core模块处理并落入相关的数据存储中,同时会通过Query Core模块进行二次统计和监控告警3. Storage。原创 2024-02-11 20:13:53 · 1828 阅读 · 0 评论 -
全链路内容分享(三):链路传播(Propagate)机制及使用场景
OpenTelemetry 传播器源码:https://github.com/open-telemetry/opentelemetry-java/tree/main/extensions/trace-propagators/src/main/java/io/opentelemetry/extension/trace/propagation。为了实现服务间链路追踪传播机制,通常会使用一些开源工具或框架,比如OpenTelemetry、DataDog、Zipkin、SkyWalking 等。原创 2024-02-11 20:03:45 · 1001 阅读 · 0 评论 -
全链路内容分享(二):全链路有什么作业?
以“开放性、高容量、易扩展、成本可控、安全稳定、便捷研发”为建设理念,在分布式全链路灰度发布领域积极推动技术创新、管控升级,覆盖银行核心交易链路场景,持续完善全链路灰度发布模式,减少应用接入成本,提升全链路灰度发布中各组件兼容适配能力,以适应复杂的分布式金融交易场景,为智慧银行建设提供有力支撑。工行微服务框架在此机制上,将灰度标签作为一隐式参数,在消费方发起请求切面中自动将该参数设置在请求中,使得灰度流量在链路传递过程中,其携带的灰度标识能被层层传递下去,实现全链路灰度发布能力。图 6 服务框架灰度路由。原创 2024-02-11 19:57:24 · 767 阅读 · 0 评论 -
全链路内容分享(一):什么是全链路监控?
在分布式微服务架构中,系统为了接收并处理一个前端用户请求,需要让多个微服务应用协同工作,其中的每一个微服务应用都可以用不同的编程语言构建,由不同的团队开发,并可以通过多个对等的应用实例实现水平扩展,甚至分布在横跨多个数据中心的数千台服务器上。单个用户请求会引发不同应用之间产生一串顺序性的调用关系,如果要对这些调用关系进行监控,了解每个应用如何调用,这就产生了全链路监控。原创 2024-02-11 19:48:47 · 1750 阅读 · 0 评论 -
云原生内容分享(十二):云原生的日志监控系统(Loki-stack)
Promtail用来将容器日志发送到 Loki 或者 Grafana 服务上的日志收集工具该工具主要包括发现采集目标以及给日志流添加上 Label 标签 然后发送给 LokiPromtail 的服务发现是基于 Prometheus 的服务发现机制实现的Loki受 Prometheus 启发的可水平扩展、高可用以及支持多租户的日志聚合系统使用了和 Prometheus 相同的服务发现机制,将标签添加到日志流中而不是构建全文索引。原创 2024-02-09 10:42:39 · 1337 阅读 · 1 评论 -
JAVA面试题分享四百七十四:探究Redis监控
当下互联网业务愈加庞大,Redis作为时下被运用的最频繁的技术中间件之一,其各性能指标的稳定性对现实业务的影响不言而喻。本文通过代码和图片示例,首先介绍了Redis监控的背景,然后介绍了Redis的主要监控指标,紧接着又介绍了三种当下流行的Redis监控方式,希望能够对Redis实现高性能、高效率的监控,进而使我们的产品或业务既安全又稳定,以便更好的服务消费者,服务大众。原创 2024-02-05 18:12:40 · 911 阅读 · 0 评论 -
架构设计内容分享(六十一):全链路压测,你是怎么设计的?
全链路压测是在模拟实际用户使用场景的基础上,通过对整个应用程序栈进行压力测试,评估系统在高负载下的表现。这包括了从用户界面、前端服务、中间件到后端数据库等所有组成部分,以全面了解整个软件系统的性能。全链路压测是一种系统性的性能测试方法,旨在模拟真实用户场景下的完整操作流程,全面评估软件系统在不同压力下的性能表现。这种测试方法对于保证应用程序的高可用性、稳定性和可扩展性至关重要。基于实际的生产业务场景、系统环境,基于真实数据模拟海量的用户请求对整个业务链进行压力测试,并持续调优的过程;原创 2023-12-24 20:55:42 · 1316 阅读 · 0 评论 -
架构设计内容分享(六十六):全链路异步,让你的性能优化10倍+
Spring WebFlux是一个响应式堆栈 Web 框架 ,它是完全非阻塞的,支持响应式流(Reactive Stream)背压,并在Netty,Undertow和Servlet 3.1 +容器等服务器上运行。DB是一个低吞吐的物种,对于DB而已,请求太多,反而忙不过来,造成整体的性能下降。Cache Aside 缓存模式,是大家通用的Cache使用方式,Cache纯异步的架构,必须使用异步存储层客户端,可见,非阻塞的处理方式规避了线程排队等待的情况,从而可以用少量而固定的线程处理应对大量请求的处理。原创 2023-12-25 08:28:15 · 946 阅读 · 0 评论 -
云原生内容分享(七):云原生全栈监控解决方案
微服务的容器与宿主机的监控离不开CPU、内存、磁盘、网卡这些基础的性能指标,对于宿主机的监控来说,我们可以依然使用原始的监控方式,每个宿主机安装一个代理来采集服务器的性能指标,代理在采集性能指标的时候可以打上时间戳和相应的标签来区分不同性能指标的数据维度(metric),然后将监控数据汇总到时间序列数据库,里面的数据可以对接目前一些开源的组件来进行可视化的展示,也可以对接报警服务(结合报警服务的报警策略)进行报警。运维人员可以通过Topology迅速发现某一个服务潜在的问题,并进行下一步的排查并做到预防。原创 2024-01-29 22:25:07 · 887 阅读 · 0 评论