软件监控发展简史

软件监控简史,从 00 年代开始。发生了什么变化?为什么事情变得如此神秘?

终端设备上日益重要的用户体验通过边缘计算和分布式计算不断得到改善。然而,服务质量的测量仍然使用基于服务器的原语进行。

我们的 2000 年软件监控是这样的:

570ad56bad726c99488fb6a019cea058.jpeg

用户通过浏览器访问网络。互联网速度缓慢且不稳定,因此糟糕的体验不会导致客户流失。这个时间段,各种基建发展的不完善,大家主力对象都是PC,上网时间比较短,场景也比较少,慢是预期之内,所以一切发展都是正常的。

到了 2000 年代后期,手机问世了。这改变了一切,而且改变得很快。

7caf380b936b60f4d326dd486d284dfb.jpeg

用户注意力的持续时间缩短到“电梯间”和“咖啡间”、“上班之余”、“睡觉前一分钟”。用户上网开始变得非常方便,这意味着用户要求更多。注意力持续时间缩短。应用程序从web端转向娱乐互联网,开始满足人类多巴胺需求。延迟令人无法接受。同时延迟高的站点也时刻面临被淘汰的风险。

9b6f473165dc669935a2127be3478346.jpeg

企业开始认真对待分布式系统,想尽办法提升用户体验,缩短用户访问时延。

最先利用这一点的服务是媒体服务,各种视频软件铺面而来,其目的是快速接触客户,以便更快地进行消费用户。

其中内容分发网络(CDN)和边缘媒体得到广泛采用。用户现在可以快速上传和下载文件。

5761e6c17825e1da0c7e2587ee28f0d6.jpeg

社交媒体、直播和其他 over-the-top (OTT) 平台广受欢迎。更快的性能提高了用户体验。注意到系统复杂程度的快速变化了吗?看看下面的图片 👇

f3e25f461ee5da5f37f36ed99e9a1785.jpeg

随着计算机用户的迅速增长,2B软件和互联网迎来了爆发式增长,软件研发人员开始研究用户体验和使用习惯。例如:他们做什么的?他们使用系统的频率,以及他们与服务器的距离。

现在,工程师必须监控两件事:客户体验(时延)和服务器健康状况(资源占用)。

这种转变发生得太快,以至于很多工程师根本无法理解各种监控软件和各种监控指标。还有一些软件工程师心安理得认为,为什么要加一些监控指标?又要多维护一些监控软件,增加企业成本,有这个必要吗?当软件出现故障用人盯着不行吗?有什么问题吗?

然而一些早期吃到用户红利的互联网企业,早已把监控当成他们服务器端的基础设施,他们通过这些基础设施察觉用户的一举一动,所以当互联网普及速度超过人们想象时,互联网企业基本呈压倒之势占领了2B软件。小型软件公司逐渐消亡之势,大型互联网公司则越来越强。

不过监控主要由服务器端的基础设施处理。当请求到达服务器时,它们可能已经丢失了客户特定的请求信息,或者需要降低存储信息的成本。因此,我们对基础设施的健康状况有很好的覆盖,但与应用程序和产品行为的关联性很小。

这是无法接受的。只解决这些服务器健康带来的收益并不是那么大。

产品无法在缺乏透明度的情况下运行,因此它们会根据来自终端设备的事件创建自己产品层面的监控指标。

这个时候就带来了公司高层为代表的产品人员和技术工程人员之间的矛盾,监控本身就是针对一些时延指标和服务器健康,为什么要加入业务指标?

突然之间,每个团队都有自己的系统健康状况监控和理解。一片混乱!!

这种意见和观点分散的问题在于,工程团队很少能达成“提高客户体验”共识。他们有办法知道 99% 的请求都有效,但他们无法推断出 99% 的用户是否满意。

例如:虽然产品可以判断出 1% 的用户放弃了直播,但他们无法知道这是否是因为这 1% 的用户在直播中遇到了延迟。

目前可用的工具需要花费大量精力和心血才能回答上述问题。解决这些问题的激励只能锁定额外的 1% 收益。

这就是 9 的意义,从 99 → 99.9% 所需的成本和努力与从 90 → 99% 所需的成本和努力是相同的。

虽然只有一小部分客户体验是通过后端提供的,但整个遥测数据和生命周期都存在于服务器端。基于此,近年来,日志、指标、监控呈蓬勃发展,这包括基本链路追踪工具和 OpenTelemetry 规范。

为了利用可观察性来解答有关最终用户体验的问题,我们需要技术来分析不同细分市场的数据,例如地区、群体和个人用户。然而,目前的工具无法处理这种级别的基数。现有的技术无法提供经济有效的方法来分析不同细分市场的趋势,例如比较去年与今年的“黑色星期五”的销售额。

借助提高成本效益的工具,让监控更贴近客户,它将始终保持凝聚力和联系性。好的,那么我们如何解决这个问题?您认为应该改变什么?

推荐

A Big Picture of Kubernetes

Kubernetes入门培训(内含PPT)


原创不易,随手关注或者”在看“,诚挚感谢!

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

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

相关文章

程序员兼职接单有哪些渠道?一篇文章带你了解!

2024年,程序员兼职接单别只盯着朋友圈啦!这些兼职接单渠道你一个都不容错过!想要通过兼职接单获取收入的程序员,一定不能错过这篇文章! 程序员兼职接单的渠道可以简单的分类为兼职平台和程序员论坛和自身人脉拓展三个…

【SD3辅助工具推荐】InstantX发布了三种SD3专属的ControlNet模式——Pose、Canny和Tile

InstantX 是一家专注于人工智能内容生成的独立研究机构。此前,曾开源著名的InstantID和论文《InstantID : Zero-shot Identity-Preserving Generation in Seconds》。随着本月12号,Stability AI正式开源了其产品 Stable Diffusion 3,这家机构…

高效设计必选!5款好用的UI动效工具

UI 动态设计是应用程序设计的重要组成部分。随着技术的积累,UI设计中的动态效果遍地开花,UI动态效果可以使我们的页面更时尚、更有趣、更人性化。5G网络的快速发展也使美丽的动态效果几乎无缝地嵌入到UI界面中。今天,毫不夸张地说&#xff0c…

Visual Studio2022+cuda环境配置及代码调试

环境配置 下载并安装CUDA Toolkit 打开Visual Studio,新建项目。如下图所示,已经包含CUDA编程选项 代码调试 1、打开cu文件的属性页,按下图所示,将Host中的Generate Host Debug Information设置为“是" 2、不可勾选Nsight…

ARM功耗管理框架之LPI

安全之安全(security)博客目录导读 思考:功耗管理框架?SCP?PPU?LPI?之间的关系?如何配合? 目录 一、功耗管理框架中的LPI 二、LPI分类 三、Q-Channel和P-Channel对比 四、Q-Channel和P-Ch…

第28讲:Ceph集群使用RBD块存储与K8S Volumes集成

文章目录 1.Ceph集群使用RBD块存储与K8S集成简介2.Ceph集群RBD块存储与K8S Volume集成2.1.在Ceph集群中创建K8S集群使用的块存储2.2.创建用于K8S访问Ceph RBD块设备的认证用户2.3.将认证用户的Key存储在K8S Secret资源中2.4.在K8S集群的所有节点中安装Ceph命令2.5.创建Pod资源使…

【uni-app学习手札】

uni-app(vue3)编写微信小程序 编写uni-app不必拘泥于HBuilder-X编辑器,可用vscode进行编写,在《微信开发者工具》中进行热加载预览, 主要记录使用uni-app过程中自我备忘一些api跟语法,方便以后编写查找使用…

【React 】折叠面板,点击展开时再请求数据

需求背景:使用折叠面板的形式展示数据,面板内部数据需要在打开时请求接口获取。 遇到问题:最开始使用Antd 的折叠面板组件,它对于数据直接渲染是没问题的,但是不好满足打开面板时再动态加载数据的需求,于是…

JAVA中EasyPoi导出word文档附带表格数据

导入easy-poi相关依赖 <!-- word导出 方式&#xff1a;easypoi --><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>4.4.0</version></dependency><dependency><…

VBA学习(12):制作动态模糊匹配的下拉菜单

今天就再给大家分享一下&#xff0c;如何使用VBA制作更好用的动态模糊匹配下拉菜单。 完成后的效果演示如下&#xff1a; 如上图所示&#xff0c;点击A列单元格&#xff0c;Excel会自动跳出一个文本输入框和一个列表框。当在文本框中输入数据时&#xff0c;列表框的数据会随之…

IIS代理配置-反向代理

前后端分离项目&#xff0c;前端在开发中使用proxy代理解决跨域问题&#xff0c;打包之后无效。 未配置前无法访问 部署环境为windows IIS&#xff0c;要在iis设置反向代理 安装代理模块 需要在iis中实现代理&#xff0c;需要安装Application Request Routing Cache和URL重…

思维导图之计算机网络整体框架

高清自行访问&#xff1a;计算机网络整体框架 (yuque.com)

南开大学漏洞报送证书

获取来源&#xff1a;edusrc&#xff08;教育漏洞报告平台&#xff09; url&#xff1a;教育漏洞报告平台(EDUSRC) 兑换价格&#xff1a;30金币​ 获取条件&#xff1a;南开大学任意中危或以上级别漏洞 证书规格&#xff1a;证书做了木框装裱&#xff0c;显得很高级

k8s自动补全工具和UI管理界面

分享两个有利于K8S的工具 目录 分享两个有利于K8S的工具 一、部署Dashboard&#xff08;主节点&#xff09; 介绍 1.1、查看集群状态 1.2、下载yaml文件并运行Dashboard 1.3、部署服务 1.4、创建访问账户、获取token&#xff08;令牌&#xff09; 1.5、浏览器访问Dash…

EasyCVR/EasyDSS无人机直播技术助力野生动物监测

近日有新闻报道&#xff0c;一名挖掘机师傅在清理河道时&#xff0c;意外挖出一只稀有的扬子鳄&#xff0c;挖机师傅小心翼翼地将其放在一边&#xff0c;扬子鳄也顺势游回一旁的河道中。 随着人类对自然环境的不断探索和开发&#xff0c;野生动物及其栖息地的保护显得愈发重要。…

天池人脸识别项目复现

1 项目背景 #c 概述 项目的目的 图像分类是整个计算机视觉领域中最基础的任务&#xff0c;也是最重要的任务之⼀&#xff0c;最适合拿来进⾏学习实践。为了让新⼿们能够⼀次性体验⼀个⼯业级别的图像分类任务的完整流程&#xff0c;本次我们选择带领⼤家完成⼀个对图片中⼈脸进…

【Tableau系列第(6)篇】使用Tableau Prep进行数据清理、整合(一)

使用Tableau Prep的整体过程详见&#xff1a;【Tableau系列第&#xff08;5&#xff09;篇】用Tableau Prep整理数据全流程初体验 本篇一步一步跟我一起来熟悉更多的Tableau Prep数据清理、整合的操作。 示例excel数据源链接: https://pan.baidu.com/s/17nx3_LPe30oK1l1JsC6K…

04. Java 多线程的创建

1. 前言 本节内容重点需要掌握 Java 多线程的三种创建方式&#xff0c;具体内容如下&#xff1a; Java 线程类 Thread 继承结构&#xff0c;这是 JDK Thread 源码的类结构&#xff0c;是了解 Thread 类的第一步&#xff1b;掌握多线程的三种创建方式&#xff0c;这是本节的重…

记录:[android] SSLHandshakeException: Handshake failed 问题;已解决!

1、问题描述&#xff1a;在使用Retrofit2 时在安卓老设备上&#xff08;安卓6.0&#xff09;网络无法请求、安卓 10 、 11 未出现此问题&#xff1f;what? 原因&#xff1a;服务端 TLS 版本过高 2、废话不多说、解决方案A 、添加依赖&#xff1a;implementation org.conscrypt…

国产MCU芯片(3):小华半导体

前言: 微控制芯片(MCU)作为现代电子化、信息化智能控制的核心元器件之一,是将中央处理器、存储器、定时器/计时器、模拟信号采集模块以及通信接口等集成在一块芯片上的微型控制器。 家电与消费市场端仍是国内的MCU厂家下游最大的应用市场和主战场,最近两年正在发力车规级市…