TCPCopy 默认从 IP 层抓包,从 IP 层发包,在测试服务器进行响应包的截获,并通过 intercept 程序返回响应包的必要信息给 TCPCopy。
在线上要引流的机器和测试机分别安装 TCPCopy,版本 tcpcopy-0.9.6.tar.gz
然后:
configure
make
make install
默认采用 ip queue 模块进行引流。
测试机操作:
modprobe ip_queue
iptables -I OUTPUT -p tcp --sport 80 -j QUEUE
intercept -d –l intercept.log
线上引流机操作:
tcpcopy -x 80-10.16.135.200:80 -d -l tcpcopy.log
可用于测试引流程度的方法:
- nload –eth0 查看两边机器网卡传输
- 直接查看 access.log
已用 Apache 的 ab 测试做了简单的实验 一共 10000 次请求 并发请求在 100 次/秒 可以达到 99.97% 的请求流量复制。
现在单台高峰期并发不到 100。
测试机器的实际情况:
线上机器的实际情况: