还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!

栏目: 软件资讯 · 发布时间: 7年前

内容简介:我们经常在性能测试和压力测试的时候发愁,如何模拟线上真实流量还原现场使用情况对于我们来说是个大挑战。通常情况下,我们会从数据库中找出用户访问的数据和请求来模拟历史访问,这样做需要做大量的脚本和数据分析工作。现在好了滴滴开源RDebug工具可以录制线上的真实流量,并且可以通过回放的方式对系统进行测试。帮助我们实现性能测试和压力测试,并且可以快速的对高峰访问情况进行复盘。我们一起来看看吧。地址:https://github.com/didi/rdebug/blob/master/README_zh_CN.md

还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!

我们经常在性能测试和压力测试的时候发愁,如何模拟线上真实流量还原现场使用情况对于我们来说是个大挑战。通常情况下,我们会从数据库中找出用户访问的数据和请求来模拟历史访问,这样做需要做大量的脚本和数据分析工作。现在好了滴滴开源RDebug工具可以录制线上的真实流量,并且可以通过回放的方式对系统进行测试。帮助我们实现性能测试和压力测试,并且可以快速的对高峰访问情况进行复盘。我们一起来看看吧。

GitHub开源

地址:https://github.com/didi/rdebug/blob/master/README_zh_CN.md

目前有700左右的星星了。

还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!

鉴于微服务具有易于扩展、部署简单、技术异构性等优点,越来越多的服务都在采用微服务的架构模式。一个复杂的单体服务通常会被拆分成多个小的微服务,当然在享受微服务带来的一系列便利的同时也要接受因为微服务改造带来的问题:需要维护的服务数变多、服务之间 RPC 调用次数增加……

在服务化改造完成之后,原来的单体服务演化成一堆微服务,这就造成线下开发测试环境维护成本大大增加,其次线下环境涉及到的部门较多,维护一个长期稳定的线下环境也是一个挑战;业务快速发展、需求不断迭代,手写单测又因复杂的业务逻辑以及复杂的服务调用需要 mock 多个下游服务,导致手写单测成本特别的高;手动构造数据,又不够全面真实。以上问题都严重影响 RD 的研发效率,并且增加线上发生事故的隐患。

主要功能

流量录制: 即录制线上服务的真实请求,包括调用下游服务的 RPC 请求。流量录制的难点在于如何将上下游请求以及每次 RPC 的请求/响应一一对应。

流量回放: 即用线上录制的流量,对线下测试代码进行回放,通过流量匹配 mock 掉下游 RPC 请求。因此,流量回放的难点在于请求的拦截和匹配。三种方式的回放:下载源码回放、midi.phar 包回放、composer bin 回放。

架构

还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!

通过Koala和Koala-libc 作为核心代码,实现底层库

Koala是 Go 编写的,Libc用了部分C++完成

https://github.com/didi/rdebug/blob/master/koala/README.md

生成报告

还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!

还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!

还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!


以上所述就是小编给大家介绍的《还为模拟流量测试发愁吗?!滴滴开源RDebug流量回放工具!》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JAVASCRIPT语言精髓与编程实践

JAVASCRIPT语言精髓与编程实践

周爱民 / 电子工业出版社 / 2008-3 / 68.00元

《JAVASCRIPT语言精髓与编程实践》讲述了JavaScript的语言实现与扩展,主要包括以下三个方面的内容:(1)动态、函数式语言,以及其它语言特性在JavaScript的表现与应用;(2)如何用动态函数式语言的特性来扩展JavaScript的语言特性与框架;(3)如何将JavaScript引擎整合到其它高级语言的开发过程中。一起来看看 《JAVASCRIPT语言精髓与编程实践》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具