-
手把手教你做中间件、高性能服务器、分布式存储技术交流群
手把手教你做中间件、高性能服务器、分布式存储等(redis、memcache、nginx、大容量redis pika、rocksdb、mongodb、wiredtiger存储引擎、高性能代理中间件),git地址如下: https://github.com/y123456yz/middleware_development_learning
1 简介
TCPCopy是一种请求复制(所有基于tcp的packets)工具,可以把在线流量导入到测试系统中去。目前此工具已经广泛应用于各大互联网公司。
项目网址:https://github.com/wangbin579/tcpcopy
https://github.com/session-replay-tools/intercept
2 TCPCopy功能
1)分布式压力测试工具,利用在线数据,可以测试系统能够承受的压力大小(远比ab压力测试工具真实地多),也可以提前发现一些bug
2)普通上线测试,可以发现新系统是否稳定,提前发现上线过程中会出现的诸多问题,让开发者有信心上线
3)对比试验,同样请求,针对不同或不同版本程序,可以做性能对比等试验
4)流量放大功能,可以利用多种手段构造无限在线压力,满足中小网站压力测试要求
5)利用TCPCopy转发传统压力测试工具发出的请求,可以增加网络延迟,使其压力测试更加真实
6)热备份
3 组成部分
- TCPCopy Server(tcpcopy):部署在 测试服务器 ,用于接收复制的线上请求,github地址:
https://github.com/session-replay-tools/tcpburn - TCPCopy Client(intercept):部署在 线上服务器 ,用于捕获线上请求,通过修改TCP/IP数据包,发送到TCPCopy Server进行稳定性测试,截获响应包,并传递响应包头信息给TCPCopy client,以完成TCP交互。Github地址:
https://github.com/session-replay-tools/intercept