Files
clio/tools/requests_gun
Sergey Kuznetsov d11e7bc60e fix: Data race in new webserver (#1926)
There was a data race inside `CoroutineGroup` because internal timer was
used from multiple threads in the methods `asyncWait()` and
`onCoroutineComplete()`. Changing `registerForeign()` to spawn to the
same `yield_context` fixes the problem because now the timer is accessed
only from the same coroutine which has an internal strand.

During debugging I also added websocket support for `request_gun` tool.
2025-02-27 15:08:46 +00:00
..
2024-05-24 13:01:36 +01:00
2025-02-27 15:08:46 +00:00
2025-02-27 15:08:46 +00:00
2024-05-24 13:01:36 +01:00

🔫 Requests gun

Requests gun is a simple tool that allows you to send multiple requests to a server with specific rps (requests per second) rate. This tool is useful for testing the server behaviour under a specific load. It takes a file that contains json request per line and sends them to the server in a loop with the specified rps rate.

The tool checks http status code of each request and whether the response body contains field 'error' or not. It prints statistics for each second while running.

Run requests_gun --help to see the available options.