网络分析与监控:阿里云拨测方案解密
作者:俞嵩(榆松)
随着互联网的蓬勃发展,网络和服务的稳定性已成为社会秩序中不可或缺的一部分。一旦网络和服务发生故障,其带来的后果将波及整个社会、企业和民众的生活质量,造成难以估量的损失。
- 2020 年 12 月: Akamai 的 DNS 服务中断,导致包括银行和航空公司在内的众多美国企业官网无法访问。
- 2021 年 6 月: Fastly CDN 故障,影响了《纽约时报》、亚马逊、Twitch 和 Reddit 等网站的正常运行。
- 2021 年 10 月: Facebook 遭遇大规模宕机,旗下 Facebook、Instagram 和 WhatsApp 三大社交平台全球范围内停摆长达六小时。
- 2022 年 12 月: 阿里云香港可用区 C 服务中断,故障持续超过十二小时,严重影响了大量企业的日常运营。
在这样的背景下,拨测(Sythetic Monitoring)作为可观测在网络性能和用户体验监控场景下的核心功能,借助全球覆盖的网络探测节点,模拟用户请求对目标服务/域名/IP 等进行主动网络拨测,监控目标地址在不同地域、运营商网络环境下访问的可用性、性能和用户体验。使用拨测功能,不仅能加速故障发现与定位过程,还能帮助企业优化网络资源配置和访问链路,从而提升整体业务效率及用户体验。
本文主要介绍一下拨测的主要功能和应用场景,所有功能和截图都来自于阿里云可观测团队云监控的拨测产品:网络分析与监控
https://www.aliyun.com/activity/daily/naam
网络拨测和 RUM (真实用户监控)有何不同
网络拨测和 RUM 都是用户数字体验监控的两个核心功能。拨测为模拟用户请求,RUM 为真实用户客户端的请求数据采集。两者各有优劣势,从不同维度帮助用户发现服务性能和体验问题。用户可根据自己的业务和需求选择其一或结合使用效果最佳。拨测相比 RUM 的主要优劣势如下:
优势:
- 非侵入式部署:无需前端集成任何 SDK 代码即可快速启用。
- 前瞻性故障检测:通过主动发起测试,在实际用户遭遇问题前预先识别并解决潜在故障。
- 预发布全网验证:允许企业在正式推出产品之前或者在新地域开服前进行全面的网络兼容性和稳定性测试。
劣势:
- 仿真性:RUM 为真实终端用户请求数据采集,拨测为模拟请求,不能完全真实反应用户体验
- 覆盖面:无法捕捉所有可能的用户行为和交互场景,一些复杂的用户行为无法模拟。无法定位和分析单一用户维度的问题。
网络拨测的分类和典型场景
协议拨测(可用性拨测)
协议拨测通过使用不同的网络层协议(DNS, HTTP, TCP, UDP, PING, MTR,WEBSOCKET 等)模拟用户的在线行为来分析互联网服务和网络的表现,旨在确保服务的稳定运行,并通过分析延迟、丢包率等关键指标优化用户体验。
1)可用性监控: 从世界各地的不同城市运营商节点定期检查网站是否可访问,以便于提前预警可能影响业务连续性的风险。同时支持用户对探测结果是否"可用"的自定义断言规则,包含响应延时,状态码,响应头,响应 body 的内容匹配,以及证书过期检查等。
2)网络质量监控: 采用网络拨测测量各地区各运营商到服务之间的网络状况,帮助决策者制定有效的链路优化和网络产品部署决策,如 CDN 测速,出海网络架构优化,游戏用户比较关注的运营商链路性能分析等。
3)DNS 解析劫持监控: 确保重要域名能够被正确解析,防止因 DNS 配置错误和运营商 DNS 劫持导致的服务中断现象发生。由于每个运营商每个省甚至到一些城市都有自己独立的 local dns 服务器,每个地区运营商对域名的管理和封禁策略也经常不同。所以对一些受监管比较严格的行业和服务如果需要及时发现自己的域名在某个城市遭到了封禁策略的影响就需要配置拨测任务并部署覆盖全面的探测节点,及时发现问题,及时向当地运营商反馈申请解封。
4)竞品分析: 对比同类竞品网站的页面访问性能和体验,提升服务在同类行业中的访问体验。
浏览器拨测
基于分布在全球各地的探测节点,通过使用真实浏览器(Chrome,Firefox, Edge,Safari 等)打开目标站点页面。该功能不仅能够准确反映网页加载时间,还能深入剖析页面中每个元素的渲染效率,并支持在线录制用户浏览行为(User Journey)在探测中回放验证完整的多步业务流程, 最后还能保存探测时刻的网页截图帮助用户更加直观的定位页面渲染问题。
1)用户体验分析: 追踪页面首次渲染、主要内容呈现直至完全交互所需的时间,为提升视觉反馈速度提供数据支撑。
2)页面元素优化: 利用瀑布流图揭示拖慢整个文档加载进度的具体因素,助力开发者精确定位瓶颈所在。
3)页面投毒检测: 检测是否存在未授权第三方内容注入的情况,保障网站免受恶意软件攻击,如 CDN 投毒,JS 投毒等造成的页面篡改劫持问题。如某个静态资源是否需要配置 CDN 优化性能,某个动态资源是否需要配置全球加速获取更快的回源性能。
4)用户行为完整性校验: 通过录制完整的用户行为(如:登陆,浏览,搜索,购买,下单等 User Journey),在探测中回放完整用户行为,验证完整且复杂的业务流程。
内网拨测
聚焦于云上内网环境下服务和实例的健康状态,此类拨测有助于维护云上内网服务的可用性和性能。
1)VPC 连通性监控: 持续监视云上 vpc 内各实例间的网络连通性,及时发现并修复连接障碍。
2)云服务巡检: 全面审核托管在云端的各项内网服务和云产品实例(如 RDS, REDIS 等),确认其正常运作且符合预期标准。
探测点分类
在拨测工具中,探测点的种类主要分四大类型,用户需要根据业务的类型,自身的需求和成本的考量选择不同类型的探测节点:
- 云主机探测点: 探测节点为阿里云,微软,谷歌,亚马逊等云上的机器资源。网络出口为多线路 BGP。探测结果稳定,噪声小,适用于只关注整体服务可用性,但不特别强调具体 ISP 线路特性差异的场景。同时因为仿真性差,也无法发现运营商出现的劫持和链路性能故障问题。
- 运营商 IDC: 探测节点为部署在各大电信运营商数据中心内的物理设备,网络出口为单线指定运营商。探测结果稳定,噪声小,适合那些希望深入了解自身服务在中国乃至全世界范围内不同运营商环境下表现差异的企业。能够发现大部分运营商 DNS 劫持和链路性能故障问题,少量运营商在接入端的流量劫持问题无法识别。
- PC 端 Lastmile 网民: 探测节点为部署在家庭环境下的网民客户端资源,探测结果稳定性一般,有一定噪声,成本略高,但仿真性好,探测结果视角更贴近大众日常生活中的实际体验,可以发现从接入端到 Backbone 的故障。
- 移动端网民: 探测节点为部署在家庭环境下的网民手机移动端资源,探测结果稳定性一般,有一定噪声,仿真性好,成本略高,代表了当今社会越来越依赖手机和平板电脑上网的趋势,尽管这类样本可能存在较大的波动性,但对于理解移动应用性能至关重要。
不同拨测点探测可用率和性能对比:
总结
总之,网络和服务的稳定性在当今社会中至关重要。通过拨测(Synthetic Monitoring)技术,企业可以主动监控和优化其服务的可用性、性能和用户体验。每种拨测类型和拨测点类型都有其特定的应用场景和优势。通过合理选择探测节点并实施多层次的拨测策略,企业不仅能提前发现潜在故障,还能优化资源配置和提升整体业务效率。最终,这将为企业提供更加稳定可靠的服务,保障用户的高质量体验。
欢迎大家来体验来自阿里云可观测团队云监控的拨测产品:网络分析与监控

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
编译时插桩,Go 应用监控最佳选择
可观测性是以系统的指标、日志、链路追踪、持续剖析四大数据支柱为基础,从宏观到微观,通过不同数据之间互相关联,衍生出如数据监控、问题分析、系统诊断等一系列的能力。 Java[1]可以通过字节码增强的技术实现无侵入的应用监控(开源社区有非常多的无侵入Agent实现方案,技术非常成熟),可以轻松获取到关键监控数据,相比Java,Go因为语言的特点,应用运行的时候已经被编译成一个二进制文件,无法再做类似Java字节码增强的方式进行动态插桩,在应用监控领域的生态并不完善,可观测的四大数据支柱无法通过无侵入的方式来实现,使得用户的接入成本变高,当前针对Go应用的可观测能力,有3种解决方案: SDK方案 eBPF方案 编译期自动注入方案 以下分别来介绍这几个方案以及对应的开源实现: SDK 方案 在可观测领域,随着OpenTracing 被OTel 收编,目前被广泛使用的SDK就是OTel Go SDK[2],通过在业务代码的每个需要的地方进行手动增加埋点,如下所示: package main import ( "context" "fmt" "go.opentelemetry.io/otel" "...
- 下一篇
盘点丨双轨制、OKR、KPI绩效考核,该如何落地?
随着企业发展,管理者对考核的关注点可能发生变化,不仅仅停留在绩效打分,而是关注考核的量化可评估,或是注重目标管理和过程改进,以及人才的综合评估等。与这些考核需求对应的考核模式,也在发生变化。 常见的包括KPI、双轨制、结合OKR的评估模式等。这些考核模式有什么特点,适合什么样的企业,推行中遇到的难点该如何解决?今天我们来一一揭晓,同时为你介绍如何通过绩效管理应用「智能绩效」将不同的考核模式落地。 KPI考核 KPI在企业中运用得较为普遍,KPI这种考核方式能够确保企业战略分解落实到每个部门、员工身上,并对每个员工的指标完成情况进行考核。 KPI考核的关键指标通常分为定性与定量。 定量指标:部门或岗位相关的关键结果指标一般为定量指标,直接以完成数据作为考核依据,如电商企业根据战略目标体系制定指标体系,其中的销售额、毛利率、流量、转化率等指标。有时企业也会将部分量化指标进一步拆分为关键过程指标,如对销售人员围绕达成"销售额"制定"开发大客户数"的指标。 定性指标:在KPI考核中,也有部分考核内容是较难被量化的,可能会以定性指标进行考核,如运营经理需要对团队进行管理、制定流程制度等,是关键过...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- 2048小游戏-低调大师作品
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Hadoop3单机部署,实现最简伪集群