写点什么

生产环境全链路压测建设历程之九 淘宝网全链路压测的原理

发布于: 2020 年 12 月 15 日

上一篇的内容是《生产环境全链路压测建设历程之八  生产全链路压测和传统压测的差异点》。


这一篇要写的内容是,淘宝网全链路压测的原理。

淘宝网的统一技术框架


自从 09 年淘宝网开始做中心化、去 IOE 的时候,就定义好了技术框架。

如分布式调用框架 HSF,对应的是 B2B 后来开源的 dubbo。

如分布式数据库访问层 TDDL ,对应的是 B2B 后来开源的 mycat。

同时还有分布式链路追踪框架 eagleeye,是参考 google 的 dapper 论文实现的。

当然了,这些统一的技术框架,每一行代码都是淘宝网中间件团队一行行开始写的。

全链路压测的核心原理


有了上面讲的统一的技术框架,在约定好了压测流量会带上一个特殊的标记(比如 http 请求,可以带一个自定义的 header 值为 PT) ,对应的技术框架在处理压测流量的时候,当涉及到数据库、缓存、消息 topic 对应的数据读取和存储,会自动在真实的表名前面增加一个__test 前缀。


这样最终实现了压测数据和真实数据的隔离。

淘宝网为什么这么做?


其实原因很简单,这对于淘宝网来说是最快最方便的实现方式。

中间件的代码是淘宝网的中间件工程师一行行写的。

还能有分布式链路追踪来追踪压测流量是否按照期望的方式流转。


发布于: 2020 年 12 月 15 日阅读数: 125
用户头像

还未添加个人签名 2017.12.21 加入

还未添加个人简介

评论

发布
暂无评论
生产环境全链路压测建设历程之九  淘宝网全链路压测的原理