端到端观测分析:从前端负载均衡到后端服务

前言

我们在做系统运维保障的时候,关注从前端负载均衡到后端服务的流量情况是很有必要的,可以了解每个后端服务实例接收的流量大小,这有助于确定资源分配是否合理,能够帮助找出后端服务中的性能瓶颈。同时,当系统出现故障时,如部分用户无法正常访问服务,分析负载均衡到后端服务的流量可以快速确定是负载均衡器的问题还是后端服务的问题(例如:如果负载均衡器到某个后端服务的流量突然中断或者异常下降,而其他后端服务正常,就可以重点排查这个出现问题的后端服务)。

下面我们通过一个实际的例子,来看下我们可以如何通过观测云来进行从前端到后端的问题分析和排查。

观测云

观测云( www.guance.com )是一个统一实时监测平台,它提供全面的系统可观测性解决方案,帮助用户快速实现对云平台、云原生、应用及业务的监控需求。观测云的核心功能包括:基础设施监测,日志采集和分析,用户访问监测(RUM),应用性能监测(APM),服务可用性监测(拨测),安全巡检,智能监控等等。

在这个实际案例中,客户是使用的某专有云的负载均衡,后端配置了云主机做为实例。通过观测云,可以从这几个维度来进行可观测的建设:

  • 通过观测云的 Func 工具( func.guance.com )接入云平台的负载均衡指标,包括实例、监听器、后端服务实例和端口等维度。Func 提供自定义函数功能,允许用户通过编写代码来实现特定的数据处理、转换和接入操作。通过 Func 可以灵活地将外部数据引入观测云的监控体系,例如云平台监控 API。不同的云平台都有自己的监控 API,这些 API 提供了获取云资源监控数据的接口,例如获取服务器的 CPU 使用率、网络流量、存储使用情况等数据。
  • 通过观测云的统一数据采集器 DataKit,安装在云主机环境中,提供如下维度的可观测数据:
    • 多种系统资源的性能指标,如 CPU 使用率、内存占用、磁盘 I/O、网络流量等,还能整合日志、事件等数据,为系统监控提供全面数据支持
    • eBPF 网络数据,能够采集四层、七层网络数据,可监控网络连接、流量、延迟、丢包等指标,分析网络性能问题,还能识别网络中的异常流量和潜在安全威胁
    • 应用性能数据采集,接收链路数据,采集应用程序的性能指标,如响应时间、吞吐量、错误率等,以及分布式链路追踪信息,帮助用户全面了解应用性能状况

分析步骤

有了以上数据之后,我们来看一下如何联动分析和下钻:

1、通过仪表盘做为入口,可以及时了解云平台中负载均衡的流量情况,也包括流量较大的负载均衡的详细信息(负载均衡的 ID、VIP、端口以及后端云主机实例的 IP 和端口信息)。不过需要注意的是,由于云平台的 API 一般有读取限制,因此通过这种方式拉取监控指标,有一定的时间间隔。

2、如果发现有流量较大或者异常的情况,可以直接点击仪表盘的视图,进行跳转,查看详细的 eBPF 网络数据。

观测云支持图表内置关联链接和自定义关联链接,可以实现从当前图表跳转至目标页面,同时也支持自定义,通过模板变量中对应的变量值传送数据信息,实现数据联动。图表链接 - 观测云文档

3、定位到相关的云主机,流量确实不小,接下来进一步分析了该主机相关的应用服务情况,发现有很多报错也就是状态是 error 的链路,并且持续时间都很长。点开某条链路,能够看到相关的 span 调用有上万条,造成了网络的频繁访问。这时候就可以直接把相关的数据转发给研发同学来进一步分析和优化了。

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

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

相关文章

Ubuntu下OCC7.9+Qt5 快速搭建3D可视化框架

Ubuntu下OCC7.9+Qt5搭建简易的项目框架 近两年国产CAD替代如日中天,而几何内核作为CAD软件的核心组件之一,当前有且仅有唯一开源的几何内核库即OCCT;这里为各位自立于投入CAD开发或正在学习OCC库的小伙伴们奉献上一个快速搭建QT+OCC的项目框架; 本文介绍了Qt5+Occ 显示几何…

C++类与对象—下:夯实面向对象编程的阶梯

9. 赋值运算符重载 9.1 运算符重载 在 C 里,运算符重载能够让自定义类型的对象像内置类型那样使用运算符,这极大地提升了代码的可读性与可维护性。运算符重载本质上是一种特殊的函数,其函数名是 operator 加上要重载的运算符。 下面是运算…

【深度学习-Day 6】掌握 NumPy:ndarray 创建、索引、运算与性能优化指南

Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…

工程师 - 汽车分类

欧洲和中国按字母对汽车分类: **轴距**:简单来说,就是前轮中心点到后轮中心点之间的距离,也就是前轮轴和后轮轴之间的长度。根据轴距的大小,国际上通常把轿车分为以下几类(德国大众汽车习惯用A\B\C\D分类&a…

[低代码 + AI] 明道云与 Dify 的三种融合实践方式详解

随着低代码平台和大语言模型工具的不断发展,将企业数据与智能交互能力融合,成为提高办公效率与自动化水平的关键一步。明道云作为一款成熟的低代码平台,Dify 则是一个支持自定义工作流的开源 LLM 应用框架。两者结合,可以实现灵活、高效的智能化业务处理。 本文将详解明道…

鼠标悬浮特效:常见6种背景类悬浮特效

鼠标悬浮特效:常见6种背景类悬浮特效 前言背景闪现效果预览代码展示 元素阴影效果预览代码展示 元素悬浮阴影效果预览代码展示 元素上浮阴影效果预览代码展示 元素边框阴影效果预览代码展示 元素卷角效果预览代码展示 结语 前言 在之前的文章中,我们介绍…

[人机交互]理解与概念化交互

零.本章重点(理解和分析用户问题) – 解释“问题空间”的概念和含义 – 解释如何概念化交互 – 描述什么是概念模型 – 讨论将界面隐喻作为概念模型的利弊 – 讨论界面具体化和抽象化各自的优缺点 – 概述概念设计和实际设计的关系 一.理解问题空间 简单…

9.城市基础设施更新工程

9.1 道路改造施工 9.1.1 道路改造施工内容 沥青、水泥混凝土、砌块路面、人行步道、绿化照明、附属设施、交通标志、沥青路面材料的再生利用 9.1.2 道路改造施工技术 1.沥青路面病害及微表处理 1.病害处理 裂缝处理 10mm以内专业灌缝材料或热沥青灌缝、潮湿时乳化沥青灌封…

Milvus(11):动态字段、可归零和默认值

1 动态字段 Collections 的 Schema 中定义的所有字段都必须包含在要插入的实体中。如果希望某些字段是可选的,可以考虑启用动态字段。 1.1 概述 在 Milvus 中,可以通过设置 Collections 中每个字段的名称和数据类型来创建 Collections Schema。向 Schem…

LeetCode41☞缺失的第一个正数

关联LeetCode题号41 本题特点 数组,哈希表 本题思路 找缺失的最小正数,看举例说明缺失的正数,一种情况是连续的最小的正数,一种是缺失连续但不是最小的正数验证数组内数组是否连续,可以通过 nums[i]1 是否存nums组…

补题( Convolution, 二维卷积求输出矩阵元素和最大值)

来源:https://codeforces.com/gym/105231/problem/H 题目描述: 一、题目分析 本题涉及深度学习中的二维卷积操作。给定一个nm的二维输入矩阵I和一个kl的核矩阵K ,通过特定公式计算得到(n - k 1)(m - l 1)的输出矩阵O ,要求在…

【Java ee初阶】多线程(7)

一、线程池 线程池的一些参数: corePoolSize:核心线程数量 maximumPoolSize:核心线程数量临时线程数量 上述是“java 的线程池策略”(其他语言,其他库的线程池可能不同) keepAliveTime :临时线程的存活时间.临时线程…

Linux 常用指令详解

Linux 操作系统中有大量强大的命令行工具,下面我将分类介绍一些最常用的指令及其用法。 ## 文件与目录操作 ### 1. ls - 列出目录内容 ls [选项] [目录名] 常用选项: - -l:长格式显示(详细信息) - -a:显…

uv安装及使用

windows安装参考: 什么是python uv,如何在windows上安装uv,基础的用法有哪些?_windows安装uv-CSDN博客 https://zhuanlan.zhihu.com/p/6776864377 使用方式 方式1: 创建uv虚拟环境->激活环境->安装依赖&…

C#实现Socket通信:基于TCP/IP协议的网络编程

TCP/IP网络模型 最上层的是应用层,也就是我们日常可以接触到的,它会给数据添加对应的头部,并传输给传输层,应用层是我们日常会接触到的,比如HTTP,FTP,Telnet,DNS,SMTP。…

哈希算法、搜索算法与二分查找算法在 C# 中的实现与应用

在计算机科学中,哈希算法、搜索算法和二分查找算法是三个非常基础且常用的概念。它们分别在数据存储、数据查找、以及高效检索等场景中起着至关重要的作用。在 C# 中,这些算法的实现和使用也十分简便。本文将详细讲解这三种算法的原理、应用以及 C# 中的…

AI日报 · 2025年5月05日|雅诗兰黛与微软合作成立 AI 创新实验室,加速美妆产品研发与营销

1、苹果与 Anthropic 深化合作,内部测试 AI 驱动的新版 Xcode 据多方报道,苹果公司正与人工智能初创公司 Anthropic 合作,开发集成 AI 功能的新一代 Xcode 开发平台。该平台旨在利用 Anthropic 强大的 Claude Sonnet 模型,为开发…

python celery框架结合django的使用

学习目标: 通过文章了解celery的运行机制以及如何结合django去使用 熟悉celery的运行原理属性celery在django项目当中的配置如何启动运行celery框架 学习内容: 熟悉celery的运行原理,简单来说 Celery 是一个“任务排队机后台处理器”。帮你…

滑动窗口leetcode 904

代码&#xff1a; class Solution { public:int totalFruit(vector<int>& fruits) {int n fruits.size();unordered_map<int,int> window_type_count;int left 0;int ans 0;for(int right 0; right <n;right){while(window_type_count.size() 2 &&…

用可视化学习逆置法

1.逆置法思路 目标&#xff1a;将这个彩色数组向右旋转3步 &#x1f534;1 → &#x1f7e0;2 → &#x1f7e1;3 → &#x1f7e2;4 → &#x1f535;5 → &#x1f7e3;6 → ⚪7我们希望得到 &#x1f535;5 → &#x1f7e3;6 → ⚪7 → &#x1f534;1 → &#x1f7e0;…