If interested in the results, read the Full Report or the shortened Blog Post about this experiment.
This is a NodeJS websocket client designed to benchmark the performance of both reliability and speed of various websocket implementations.
The other server variations can be found at the links below
*** If the client seems to freeze on Windows, try disabling Quick Edit Mode in the Command Prompt
docker run mtomasetti/nodejs_websocket-benchmark-client
That's it! The websocket server will automatically start ####Optional Environment Variables
- BENCHMARK_FOLDER - The base directory where all benchmark results are stored
- Default: "./benchmarks"
- Type: string
- BENCHMARK_LANGUAGE - The language which is being benchmarked
- Default: manual user input
- Type: string
- WEBSOCKET_ADDRESS - IP address of the websocket server to connect to
- Default: "127.0.0.1"
- Type: string
- WEBSOCKET_PORT - Port number of the websocket to connect to
- Default: 8080
- Type: integer
- ADD_CONNECTIONS - The number of websocket connections to add each round
- Default: 100
- Type: integer
- REQUESTS - The number of requests to sound out per connected client per round
- Default: 50
- Type: integer
- ROUNDS - The number of rounds to perform per test
- Default: 25
- Type: integer
docker build . -t websocket_benchmark/client
docker run websocket_benchmark/client
In order for this websocket server to compile and run, it requires:
- Node
- Yarn
It is recommended that you use the ready-made environment via the included Dockerfile
yarn install
node main.js