Dr. Jon Keevil and I had the privilege to talk to Dr. Craig Joseph on the Nordic In Network podcast about the journey of our last company, HealthDecision. Check it out!
I recently needed to do some informal HealthDecision API concurrent session testing. I decided to try out the Apache benchmarking tool (ab). Given that I needed something quick, I started a new HealthDecision session in the browser and used Chrome Developer Tools’ copy as cUrl functionality to get the headers and the POST data. This obviously worked on the command line, but each request was taking close to six seconds when I used ab!
It didn’t make much sense at first sight because the exact same request was less than half a second every time. I tried running with output turned on (-v 4) and could see that it was waiting after it received the response from the server. After some more troubleshooting, I finally realized that it was the keep-alive header causing ab to wait for the connection to close!
Lesson learned, pay very close attention to the headers.