bench-routes is a highly scalable network benchmarking, routes performance and monitoring tool, that monitors in regular intervals the state of the server, running as a daemon process. For more information, read the docs
Monitoring has been tough and with the increase in the routes used in any sophisticated project, the performance and metrics of an application are seriously affected. With an increase in server computational models, the probability of a complete request-response cycle without any throws is nowhere close to 1.
The primary goals of the project are:
1. Benchmark route (a) Load-handling of application on the individual route. (b) Test various possibilities of data in params (Permutate params), like sending an empty param to see how the server response behaves. 2. Analyse network performance of the hosted application irrespectively of containerization (a) Network ping (b) Jitter analysis (c) Packet loss 3. Log error handling capability of the application 4. Maintain a check on server-route output and alert on changes above the threshold 5. Graphical view using ElectronJS
For installation instructions, please head-over to INSTALL.md.
Making Commits in bench-routes
Bench Routes uses DCO(Developer Certificate Origin) to certify that the contributor wrote the partcular code or otherwise have the right to submit the code they are contributing to the project.For complete details on DCO Click Here.
Follow the below
commit syntax to cerify the code and pass the DCO test.
git commit -s -m <commit-message>
Use of MakeFile in bench-routes
make for building and executing the program.
Follow the commands to make the development proces easier:
- Updating the dependencies:
- Executing the application (assuming all dependencies are installed):
- Building the application for the current OS:
- Testing Golang code:
- Complete testing include building for all OSs out there:
- Cleaning up the residula files:
- (optional) Check linting (assuming golangci-lint is installed):