tcpcopy实战之拷贝生产服务器流量做压力测试

tcpcopy安装使用

一、下载安装
首先,tcpcopy官方网址下载相关代码和文档:
https://github.com/wangbin579/tcpcopy/downloads
我使用的是比较新的0.6.5版本,上面的地址中也有文档可以下载。如果英语好的,可以自行去上面的地址下载使用。
接下来就是安装了,在线上和目标服务器都要安装,
#./configure
#make
#make install

二、配置使用
2.1在测试机上配置:
#modprobe ip_queue
#modprobe -l | grep ip_queue   //应该就可以查看到此模块了。
#iptables -I OUTPUT -p tcp --sport 8080 -j QUEUE  //这里的8080端口是我测试机上跑的resin使用的就是8080端口。简单来说就是你要用哪个端口来接收线上服务过来的请求。
#/usr/local/bin/interception -d

2.2在线上服务器配置:
#/usr/local/bin/tcpcopy -d -x 80-172.31.2.68:8080 &  //这里80的意思是我线上服务端口,拷贝到测试机172.31.2.68的8080端口上且在后台运行。
#tail -f /opt/logs/resin/jvm-server1.log //现在172.31.2.68查看resin的log就可以看到线上的请求源源不断的过来了。

时间: 2024-08-26 02:44:32

tcpcopy实战之拷贝生产服务器流量做压力测试的相关文章

在linux中给你的应用做压力测试

在linux中给你的应用做压力测试 作者: 立地 邮箱: [email protected] QQ: 511363759 一.webbench 1.在Ubuntu中安装webbench —支持get,head等请求,但不支持post请求 wget http://blog.zyan.cc/soft/linux/webbench/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd webbench-1.5 make && make insta

Nginx服务器防止被压力测试

最近经常用人帮忙做压力测试,用webbech或者ab等一些工具模拟并发压服务器,若服务器没有限制连接数或带宽,服务器很容易被压跨.cat nginx.conf…http {…limit_conn_zone $binary_remote_addr zone=one:10m;#如果在1.1.8之后版本还用语法:limit_zone name $variable size,会报警告nginx: [warn] the“limit_zone” directive is deprecated, use th

如何用Jmeter做压力测试 --- 转

Jmeter是一个性能测试工具,同loadrunner类似,他功能较多,我们常用的功能是用jmeter模拟多浏览器对网站做压力测试.    下载jmeter地址 :http://jakarta.apache.org/我们一般的网站,在进入业务功能前先需登录,然后才能访问业务功能.下面介绍如何用jmeter登录系统再对主业务做压力测试.1 运行jmeter    2 左边树将出现测试计划.工作台两根节点.3 选择测试计划,按右键->添加->threads(users)线程组    线程组能设置以

使用Application Center Test (ACT)来做压力测试 【转】

在我们完成了基于SPS2003的开发,实现了我们的具体应用以后,我们是不是就可以直接请用户来使用了呢?如果我这么做,那么有经验的开发人员一定会对此嗤之以鼻:居然连压力测试也不做!真是不想活了…… 呵呵,是啊.开发环境往往只考虑功能,到了具体环境中,就需要考虑有大量的用户来访问的时候,很多功能会不会出错?性能会怎么样呢?……我们这里就简单看看,怎么来做压力测试. 相信作压力测试肯定有很多工具,而我们一般使用的,现在很多是Application Center Test (ACT).这个东东是VS.N

loadrunner之做压力测试要做的准备

前提B/S架构 1.要有个备库和主库保存一致 到时候做压力测试的时候,要断开主库连接到备库.进行测试.以免主库出现垃圾数据.2.节点 判断单节点能承受多大的压力,如200万的用户账号,10万的在线用户,5000的并发用户,50台负载均衡应用服务器,一台数据库服务器,一台手机端服务器,那么单节点最少要承受多大的压力?5000/50=100并发用户 结论:在这样的条件下,单节点要承受100并发用户.这个用户数据有实施提供.3.IE浏览器的兼容性 在loadrunner录制脚本的时候,要求不能出现IE

(转)学习使用Jmeter做压力测试(三)--数据库测试

数据库测试 JMeter可以做为Web服务器与浏览器之间的代理网关,以捕获浏览器的请求和Web服务器的响应,这样就可很容易的生成性能测试脚本. 根据脚本,JMeter可通过线程组来模拟真实用户对Web服务器做压力测试.本文描述使用JMeter进行数据库测试的过程.创建测试计划,模拟 并发用户发送SQL请求到数据库.测试数据库. 性能测试的目标是找到系统的性能瓶颈.本文将通过构造测试场景,完成对数据库的测试. 场景: 1.单用户: a.SQL语句优化:    b.数据库约束检查:   c.分页查询

ab做压力测试

ab是apache 自带的一个压力测试的小工具,可用于接口简单的压力测试. 以下是AB的简要介绍 格式:ab [options] [http://]hostname[:port]/path 参数说明: -n requests Number of requests to perform //在测试会话中所执行的请求个数(本次测试总共要访问页面的次数).默认时,仅执行一个请求. -c concurrency Number of multiple requests to make //一次产生的请求个

【转】学习使用Jmeter做压力测试(三)--数据库测试

JMeter可以做为Web服务器与浏览器之间的代理网关,以捕获浏览器的请求和Web服务器的响应,这样就可很容易的生成性能测试脚本.根据脚本,JMeter可通过线程组来模拟真实用户对Web服务器做压力测试.本文描述使用JMeter进行数据库测试的过程.创建测试计划,模拟并发用户发送SQL请求到数据库.测试数据库. 性能测试的目标是找到系统的性能瓶颈.本文将通过构造测试场景,完成对数据库的测试. 场景: 1.单用户: a.SQL语句优化:    b.数据库约束检查:   c.分页查询: 2.并发用户

通过命令行对CPU负载做压力测试

无意间在51首页上看到一篇关于"通过命令行制造CPU负载或压力"的文章,感觉不错,先记录下来,为将来的使用做好笔记记录! 很简单,就一个命令: # cat /dev/urandom | md5sum 然后通过top观察,cpu的值果然很高,说明测试成功! 有图有真相^ _ ^ 通过命令行对CPU负载做压力测试