前端性能优化(二) · 监控平台如何选

性能优化总体思路

性能优化这件事我觉得应该是这样的思路,这篇就来讨论 step2~3,(^-^)V

定义需求

首先看看性能我们能关注到的都有哪些,其实广义的性能也包括了稳定性 ⚖ 和安全性 🔐 。

一般情况下,不同的网站类型关注的点不一样,这个要结合具体的业务去定。假设我们就是一个官网页面,我们就拿以下两个举例吧

监控方案技术选型

选型之前我们需要捋一捋我们关注点关联的原因,我们对这些原因也需要监控。这样,当表现不好时,我们才能基于监控平台的数据去做分析,要不然我们只是看个结果,啥都分析不出来更无法优化了。

  • 首屏时间:监听前端静态资源加载的耗时、接口的耗时、节点无变化的时间点。
  • 白屏率:我们关注的白屏是资源加载结束后,那也就是说我们关心的白屏情况是首屏的,并且由错误引起的,排除了网速过慢的原因。由此推断我们需要监听的是 JS 错误、接口错误。 所以最后我们需要平台具有至少以下5个内容的监控

服务链路啥意思? 如果接口调用链路很长,不是浏览器-接口(直接读取数据库)-浏览器,这样简单的流程;而在接口这步骤里面又有xxx服务-xxx服务-xxx服务-数据库,甚至是树状的,只是浏览器端无感知,那么接口这部分的监控会更复杂,要对整个链路中每一个调用环节都具备失败率和耗时的监听。

一般来说接入监控了,我们不可能无时无刻盯着那么多细节吧,所以呢,监控平台得有这3种能力

让监控上一个level,一般QA都会配合去解锁这三个技术动作,不过这种需要贴近业务功能的,一般监控平台很难具备这样的能力。

ok,已经清楚需要啥了!到了货比三家了,比啥呢?

  • 监控内容完备性:有些平台你想要的都自动采集,不用手动写代码,更方便咯
  • 大盘&报警配置的灵活性:有些平台大盘没办法自定义,five!有的报警没办法配波动,只能是绝对值,不好用!
  • 错误追踪&分析能力:有个JS报错,想找到源码哪个位置报错,好不好找呢。白屏率这么高想多维度看看分布情况,比如地区、设备类型、浏览器版本能不能看到呢。
  • 社区支持性:感觉监控的数据和预期差太多,想知道是不是使用的姿势不对,没人理你,不能选!
  • 费用:啥啥都满分,但是贵,性价比还是要考虑滴

Sentry VS 111 VS 222

说了这么多都是做事的方法,如果想直接看到底该选哪个,okok,给自己挖个坑,对比一下第三方的各类监控平台。不过一般公司基建有这个东西,都直接用公司的。毕竟在社区支持和费用上肯定是满分了。

接入监控

接入监控的方式通常取决于具体平台,平台样子大概是酱紫

Sentry 接入

假装第三方平台对比之后选了Sentry。待补充

相关推荐
小白小白从不日白几秒前
react 组件通讯
前端·react.js
Redstone Monstrosity18 分钟前
字节二面
前端·面试
东方翱翔25 分钟前
CSS的三种基本选择器
前端·css
Fan_web1 小时前
JavaScript高级——闭包应用-自定义js模块
开发语言·前端·javascript·css·html
yanglamei19621 小时前
基于GIKT深度知识追踪模型的习题推荐系统源代码+数据库+使用说明,后端采用flask,前端采用vue
前端·数据库·flask
千穹凌帝1 小时前
SpinalHDL之结构(二)
开发语言·前端·fpga开发
dot.Net安全矩阵1 小时前
.NET内网实战:通过命令行解密Web.config
前端·学习·安全·web安全·矩阵·.net
Hellc0071 小时前
MacOS升级ruby版本
前端·macos·ruby
前端西瓜哥1 小时前
贝塞尔曲线算法:求贝塞尔曲线和直线的交点
前端·算法
又写了一天BUG1 小时前
npm install安装缓慢及npm更换源
前端·npm·node.js