zoukankan      html  css  js  c++  java
  • 杂文笔记《阿里巴巴千亿交易背后的0故障发布》

    杂文笔记《阿里巴巴千亿交易背后的0故障发布》

    阿里巴巴千亿交易背后的0故障发布

    https://mp.weixin.qq.com/s?__biz=MzI0NTE4NjA0OQ==&mid=2658357346&idx=1&sn=31a90bd02290ed84e20e39c0755b673e&chksm=f2d59b0cc5a2121aa956dc6a23ccac0c0f491de7527ae439cf05561a6841cd424e94b02158d4&mpshare=1&scene=1&srcid=0422APU5II3JMqjNHH5j8jUG#rd

    GOPS·深圳站大会

    阿里巴巴运维技术专家少荃

    上线流程的验证环节

    我们会通过各种测试来验证功能是否ok,包括单元测试、集成测试等,发布过程中,我们会通过一些发布策略,例如先预发(预发布是一种特殊的线上环境,和线上使用同样的资源,比如数据库等,但是不会有用户流量进来)、然后灰度、然后分批滚动发布等方式,逐步将变更更新到线上,发布完成后,又会借助一些故障预警系统

    无人值守发布

    自动化采集这些实时的线上核心数据,进行智能化分析,迅速对发布状况进行判断,是否有故障发生,有的话则立即终止当前发布

    故障检测

    异常推荐

    召回率

    • 漏报就是本来有10个故障,系统报了9个,那么漏报了1个,召回率是90%
    • 我们已经做到了90%

    准确率

    • 误报就是只有10个故障,报了20个出来,多出来的10个就属于误报,那么准确率就是50%
    • 我们已经做到了60%左右

    产品架构

    指标

    业务指标

    基础指标

    • 内存使用情况,cpu使用率,load情况,磁盘io

    中间件的指标

    日志

    第一个版本的时候,我们选择了基础监控和日志这两方面入手

    采集

    发布前和发布后的指标进行对比

    已发布和未发布的机器进行对比

    分析

    funnel检测模型

    这第一个版本在准确率方面表现不是很好,离线跑的时候能够有30%、40%,但是线上实际跑的时候只有10%上下的准确率

    不断的分析误报和漏报数据,然后对算法做一些微调

    离线回放系统,用来对算法进行回放验证,从之前的误报、有效拦截、未拦截等数据中抽取部分数据,每次算法调整后,通过回放系统对这些数据重新进行检测分析,看看准确率和召回率是怎么变化的,误报的是否还在误报,有效拦截的是否漏报了等等。

    第二个版本,我们就采用了基于机器学习的方式在原来的基础上做了一些改进。

    简单的分类的方法,最初的想法是分成正常、异常、未分类三大类

    我的观点

    一个监控平台数据的分析系统

    通过回放系统检验算法准确性是一个靠谱的方案

    在第二个版本才引入机器学习也是一个好的实践

    XMind: ZEN - Trial Version

  • 相关阅读:
    学习笔记-第八周-PLC梯形图编程
    学习笔记-第六周-学习笔记
    学习笔记-第五周-学习笔记
    学习笔记-第四周-心得体会
    学习笔记-第四周-交流电机选优
    学习笔记-第3周-阅读材料&课本预习
    学习笔记-第3周-电机参数优选
    开发日志
    实时软件控制第四周作业
    实时软件控制第三周作业
  • 原文地址:https://www.cnblogs.com/atskyline/p/9011368.html
Copyright © 2011-2022 走看看