Truly execute load testing is the only way to show your web application’s capacity and to see how many concurent users your server can afford in real world. I still remember when people use Jmeter or it’s wrapper (like blazemeter.com) to execute load testing. We have pretty much more choice now, and in this post I’ll introduce to you 2 free & opensource tool written in Go and promised to be very fast and efficient (network and CPU)
This is my favorite tool now. It offers us a lot of options like: + Number of cpu to consume + Number of requests + Number of requests per second (concurrency) + Number of redirects to follow + Enable http2 or not
It also provide convenient report: JSON / CSV / Plot HTML (see screenshot below)
100% successful requests –> running OK with 100 concurrent users is good.
Response time histogram showed ~50% requests with 1s latency –> GOOD!
3/ Watching server
Usually, before and after executing load testing, we need to measure our server configuration to see what we should configure and what can be improved. + Network threshold configuration + Web server configuration (nginx, php-fpm…) + CPU loads, memory consumption
Note: If you have firewall running in your server, you need to whitelist your machine ip address which you’re using to executing load test, since it will mimic a very large of concurrent requests.
I always say to my co-workers to use the best tools flexibly to get things done. We’d better do! See you in our next post!