
During the initial development, we performed some load testing via the super useful Load Impact tool.
There are a bunch of other load testing tools out there, but Load Impact was by far the easiest to get started with. Loader.io by the good folks at SendGrid and BlazeMeter to name a couple.
Our infrastructure is largely built on node.js and nginx and we’re quite pleased with how well node performs — even after being a bit skeptical at first.
This test that was run on Load Impact covers the stampr API. Specifically creating mailings, batches and configs and retrieving the status of those mailings.
Currently, we have two pretty low power servers behind a load balancer serving requests, but things have been built to easily allow everything to scale horizontally. If it is called for, more can easily be started.
If you looked at that test, you’ll notice that we were averaging about 118 req/s. The requests were creating a new batch and mailing, and then listing the status of that mailing. We think we did pretty good for our current setup.
Based on this test, our theoretical maximum for our API is ~306 million requests to our API per month. So… come at me bro.
Those figures are nothing spectacular, but we think they’re pretty good and show that we are definitely capable. We can server the load for the foreseeable future and beyond.
Mission accomplished. Someone get me a flight jacket and an aircraft carrier.