Load testing with recorded traffic
Job: replay a production capture faster than it happened, or loop it. Product page: /load-testing/.
Percent limiters on --input-file (and Kafka input) change replay speed. Everywhere else, percent drops at random.
# 2x original timing
gor --input-file "requests.gor|200%" --output-http="http://staging.example.com"
# loop the file; stop after 30s
gor --input-file requests.gor --input-file-loop --exit-after 30s --output-http="http://staging.example.com"
# cap the target at 50 rps
gor --input-file "requests.gor|200%" --output-http="http://staging.example.com|50" Raise workers if the HTTP queue backs up: --output-http-workers. Watch --stats. TCP forwarder stats: --output-tcp-stats.
Consistent fraction of users (hash of a header or query param):
sudo gor --input-raw :80 --output-http="http://staging.example.com" --http-header-limiter "user-id:25%"
sudo gor --input-raw :80 --output-http="http://staging.example.com" --http-param-limiter "user_id:25%" PRO: --recognize-tcp-sessions keeps keep-alive mapping honest under split output. See PRO and distributed.
Do not invent --output-http-stats; it was removed.
Filter destructive methods before you amplify them.