您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[2024 第23届 GOPS 全球运维大会暨 XOps 技术创新峰会 · 北京站]:孔帅康-网约车全链路压测仿真度度量实战 - 发现报告

孔帅康-网约车全链路压测仿真度度量实战

AI智能总结
查看更多
孔帅康-网约车全链路压测仿真度度量实战

孔帅康滴滴网约车质量中台负责人 公司职位滴滴出行 网约车质量效能中台负责人从事质量效能工程、稳定性工程建设专注于出行行业质量效能解决方案曾任职于百度云、阿里云等国内一线互联网公司 网 约 车 全 链 路 压 测 概 述 目录 全 链 路 压 测 关 键 技 术 全 链 路 压 测 仿 真 度 度 量 规 划 展 望 网约车全链路压测概述 业务背景 出行领域技术栈复杂性 生产环境复杂混合云多机房多业务线多集群 什么是出行全链路压测 通过模拟海量司乘用户行为,在线上生产环境对核心链路执行系统级压力测试的行为,从而达到容量评估与规划以及风险挖掘的目的。 全链路压测发展历程 全链路压测关键技术 压测工具链建设 压测通路建设 A.流量染色&标识透传 B.数据隔离 数据库:物理隔离 日志与BI 压测流量标识 •MySQL:影子表,依赖DBProxy•RT:影子表,依赖压测标记•ES:影子索引,依赖压测标记 Trace数据通道•APP端或接入层生成traceid,整个RPC链路唯一 •Public日志:通过publickey隔离•业务日志:增加hintCode字段•BI:Kafkatopic隔离 •RPC调用时透传trace数据,生成新的spanid•Traceid/Spanid标识一个完整的调用链路 缓存:逻辑隔离 Trace数据扩展•扩展Trace通道,添加StressMarker •Codis/Kedis:逻辑Key隔离•Fusion:逻辑Key隔离 压测流量传递 MQ:逻辑隔离 •RPC透传:HTTP协议、Thrift协议、Dubbo协议•数据库访问:DBProxy等 •下游系统决策是否订阅压测流量 C.压测通路改造 压测应急处置 白天切空机房压测 压测过程组织 业务核心L1S链路观测 度量目标: 通过技术手段对压测核心链路进行精细化下钻,促进压测仿真与效果持续提升 技术挑战: •业务核心链路梳理完善度不足•压测时段缺乏链路巡检分析类可观测产品 落地思路: 1.推动各业务方向梳理完善L1S链路数据,自动维护核心业务场景与各子系统间的逻辑关系2.参考生产系统可观测产品,批量维护黄金指标&错误码分布,标准化到集群粒度3.结合压测流量及线上放火探测出核心链路各节点强弱依赖关系4.分阶段实现压测流量的metric、trace、log等监控数据关联,提高压测过程中问题定位效率及体验 业务核心模块容量水位大盘 整合容量管理手段,提升容量评估准确性&效率,整合多渠道压测数据,指导容量平台扩缩容 容量计算逻辑:•人工标注:90天有效期 •哨兵压测:90天有效期,月粒度执行•阶段峰值:自动更新+校验,校验通过覆盖旧值•全链路压测:仿真度达标后覆盖旧值,不达标则丢弃•历史线上峰值:60天有效期 全链路压测仿真度度量 仿真度建设思路 •确定仿真度度量范围及对象•度量要求分解及选择•度量方法及公式的调研及选型 仿真度度量意义 •看清全链路压测覆盖现状•发现压测覆盖薄弱点,形成正向覆盖补充闭环 仿真度提升挑战 •时空不确定性•订单距离/司机接送驾时间不确定性•成单不确定性•集团业务混布导致公共模块抢占不确定性•… 接入层接口仿真度模型调优 第一步:目标流量预测 降噪算法 度量目标: 通过技术手段来对压测场景和期望的场景相似度进行一个科学的评估,促进压测仿真与效果的持续提升。 聚焦L1S链路模块=>准确评估资源仿真度 聚焦L1S链路模块=>准确评估流量仿真度 模块接口/模块流量与业务单量拟合度: •对线上高峰期(如周五晚高峰)对比时间发单量与各接口、链路、模块流量进行线性拟合:𝑦=𝑤!𝑥+𝑒 •利用模块高峰期对比时间的真实流量与上步方程式计算的预测流量进行R方值计算:∑#+𝑦#−𝑦" 拟合度越高,代表和业务单量关系越大,流量仿真预测结果越准确 结果取值为[-∞,1],映射为[0-100],结果小于0的(效果比均差还差),直接默认为0。 品类&场景覆盖 压测前参考线上真实品类/场景比例,折算预期压测水位值,权重因子由流量决定,流量越大,权重越大。 其中𝑓!为流量,𝑤!为权重,场景覆盖的权重因子主要由流量的大小来决定,因此把当前项的流量𝑓!(flow)占总流量的比值作为权重𝑤!(weight),流量越高,比重越大。 仿真度效果展示 •正向化(一致化处理):属性值与度量准确度正相关•无量纲化:不同指标,不同单位•归一化:不同指标,数值大小不同 压测精度及效率提升 精细化资源仿真度 •根据压测目标差异,准确估算出核心链路模块压测限流值,降低压测过程中非预期限流报警量级•压测流量封禁司机侧状态保持,缩短压测过程持续时长 •结合历史经验、节假日、天气等多重因素准确预测重保时段生产流量峰值 •压测资源验证范围扩展至机房级,指导重保备机资源池筹备 压测护堤时效 感谢大家观看