What is Phantom¶
Phantom is an open source Web server, proxy server and load generator, with a strong focus on high concurrency, performance and low memory usage. It is licensed under a LGPL-like license and it runs on Linux.
Features¶
Very accurate and predictable measurement¶
Test scenario is defined up to every millisecond and every byte send to test host
Low level data collected in simple format¶
Test plan and result both are plain-text files, which could be parsed with ever You want
Result consist of:
- send/receive data size
- rtt, connection, send, server-side processing and receive times for each request
- networks error codes(errno) and application layer protocol specific codes, like HTTP status codes.
Distributed & Scalable - supports tens of thousands of concurrent requests¶
You can get
~40K HTTP rps
from one Phantom instance(POSIX process) on one Linux boxProcess are independent from each other
Extendable/Hackable¶
You can write Your own Phantom modules for custom protocols like SSL or put anything in plain-text protocols body.
Background¶
Authors¶
- Evgeniy Mamchits