Name:
tcpcopy
It is a request replication tool and is mainly for testing tasks using netlink and raw sockets
Description:
It can help you find bugs in your online project without actually being online.
And it can also be used to test the stress that a system could endure.
For example, if your system already has "memcached" subsystem and you want to
use "membase" to replace it, tcpcopy can assist you to test "membase". While your
old memcached system is still running online, tcpcopy could copy the flow of packets
from memcached to membase. From the point view of membase, the flow is accessing
membase(just like membase online), and it will not affect memcached at all except
network bandwidth and a little cpu load.
Functionalities:
1) Distributed Stress Test
You can use online data to test the stress that your target machine can endure. It is better
than apache ab tool and you can find bugs that only occur during high-stress situations.
2) Hot Backup
It is very suitable for backup tasks if connections are short-lived and the request loss rate
is very low(1/100000).
3) Normal Online Test
You can find whether the new system is stable and find bugs that only occur in actual
online environments.
4) Comparison Test
For example, you can use tcpcopy to compare the performances of apache and nginx.
Characteristics:
1)real time
2)realistic
3)efficient
4)easy to use
5)distributed
6)significant