Benchmarking HTTP
Optimizing performance can be endless activity. Our application can always be faster, more responsive, and cheaper to run. However, there's a trade off between developer time and compute time.
We can address the rabbit-hole nature of performance work in two steps. First, we assess the current performance of an application, this is known as finding the baseline. Once the baseline is established we can set realistic goals based on our findings in the context of business requirements.
For instance, we find we can handle 200 requests per second, but we to reduce server costs by one third. So we set a goal to reach 600 requests per second.
In this recipe, we'll be applying the first step in the optimization workflow "Establish a baseline" to an HTTP server.
Getting ready
We're going to use https://github.com/mcollina/autocannon as our load tool.
So let's run the following command in our terminal:
$ npm install -g autocannon
Note
About Autocannon
Autocannon has two main advantages...