阿里如何构建前端安全生产体系?
极客时间编辑部
讲述:丁婵大小:7.39M时长:05:23
来源:前端之巅
你好,欢迎收听极客视点。
随着前端技术的发展,加上前端代码主要运行在客户设备上的特性,导致前端稳定性问题层出不穷,稍有不慎就可能会给用户带来巨大损失。如何系统化地搭建前端安全生产体系,保障前端安全生产呢?InfoQ 记者冉叶兰就上述问题采访了阿里巴巴高级前端技术专家戊子(荣先乾),以下为访谈内容。
什么是“前端安全生产”?
阿里巴巴是首次提出“前端安全生产”这一概念的企业。据戊子介绍,“前端安全⽣产”与传统的“前端安全”大不相同。“前端安全”关注前端领域的线上安全攻防问题,⽽“前端安全⽣产”的定义更⼤,专注于前端研发全链路的⾼质量交付。在前端应⽤开发、发布、线上运⾏这三个关键阶段,通过⼀系列的⾃动化流程机制,控制前端代码⻛险,保障线上业务运⾏稳定。⽤机制保护⼈,不给前端同学引发线上故障的犯错机会,最终规避损失或者降低损失。
阿里如何保障前端安全⽣产?
为了保障前端安全生产,阿⾥做了很多工作。戊子回顾其团队在保障前端安全生产过程中遇到的重⼤故障,发现绝⼤部分故障都是由变更引起的。在前端版本变更前、变更中、变更后,他们通过⼀系列措施去提升前端代码质量、控制发布⻛险。这其中的关键过程包含:
前端版本变更前:静态代码扫描、⾃定义⼯程规范校验、单元测试 ;
前端版本变更中:UI 回归测试、迭代变更⻛险评估、灰度监控报告;
前端版本变更后:1 分钟发现问题、5 分钟定位问题、10 分钟修复问题。
前端安全⽣产并⾮全新领域,它更多是组合了现有分散在不同系统的能⼒,包括前端⼯程体系、前端 CI/CD 系统、前端测试系统、前端监控系统,使人们更体系化地保障前端研发全链路的⾼质量交付。
建⽴前端安全⽣产体系遇到的挑战及解决方法
正因为整个前端安全⽣产体系涉及的⼤部分能⼒都是整合现有前端相关系统,在整合过程中,需要阿里补⻬多项核⼼能⼒。戊子介绍了三个有代表性的方向,主要涉及前端迭代变更⻛险评估、前端灰度监控报告以及 5 分钟快速定位问题。
前端迭代变更⻛险评估
在回归测试阶段,要明确知道本次前端版本迭代所造成的影响点,以供开发同学⾃测或者是测试同学重点回归相应部分。⽆论是⼈⾁测试,还是⾃动化回归,都很依赖这个关键信息。还有⼀种常⻅场景是,前端代码本身没做任何改动,但由于依赖的⼆⽅/ 三⽅包⾃动升级,导致某些场景出现⽆法预料的问题。这都是因为前端迭代影响点⾃⾏评估不全⾯可能触发故障的典型场景。为了解决前端迭代中⽆法准确给出回归点的问题,阿里提供了迭代影响点评估⼯具,重点提供以下能⼒:
开发同学明确本次迭代相对于上⼀次迭代的显示 / 隐式变更;
开发同学明确哪些项⽬⽂件将受到这些变更的影响,并且能够看到具体的影响路径;
开发 / 测试同学能够看到更加全⾯、有理有据的回归功能点。
前端灰度监控报告
前端灰度监控的核⼼⽬的是让前端灰度发布的结果有据可依。在灰度发布期间,监控会重点关注前端灰度环境和线上环境对⽐后⻚⾯访问速度的变化、JS 错误率变化、新出现的 JS 异常以及 API 成功率变化,⾃动⽣成灰度监控报告。同时也会通过灰度流量⻚⾯覆盖率、API 覆盖率来判定是否需要延⻓灰度时⻓或加⼤灰度流量⽐例。
应⽤全链路的 5 分钟快速定位问题
通过前端⽣成 TraceId 并透传到后端业务调⽤链路的⽅式,打通应⽤从前端到后端全链路问题追踪,从前端发现的 API 错误问题,可以通过 TraceId 关联直达后端监控系统,⼤幅减少涉及到应⽤全链路的问题定位时间,⾄此前端同学发现 API 相关问题后不再“甩锅”到后端,⽽是给后端同学提供诊断问题的有效线索。
以上就是今天的内容,你如何看待前端安全生产体系呢?
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- 小斧前端版本变更前:静态代码扫描、⾃定义⼯程规范校验、单元测试 ; 前端版本变更中:UI 回归测试、迭代变更⻛险评估、灰度监控报告; 前端版本变更后:1 分钟发现问题、5 分钟定位问题、10 分钟修复问题。2
- Johnny用机制保护人,让我想到了CMMI。通过把经验持久化成文档,再把文档变成机制,再逐渐生长成体系。让经验可以帮助生产最大化。阿里在这方面确实做的不错,比如阿里出的JAVA编程规范手册,绝对配得上华山派武林秘籍的称号。1
收起评论