/perftest-jmeter-docker

Code for blogpost on performance testing of distributed docker deployment

Primary LanguageJavaScript

Experiment to demonstrate throughput increase on horizontal scale

Tools used

  • Apache Jmeter
  • Docker

Building and preparing

Build nginx, app Docker images

  • docker build ./app -t app
  • docker build ./nginx -t nginx

Create a bridge network app_network

  • docker create network app_network

Running

Single instance of App

docker run --name app --network app_network -it app

3 instances of App behind nginx reverse proxy

docker-compose up

Running JMeter in Non GUI Mode

  • cd jmeter
  • docker run -it --name jmeter -v ${PWD}:${PWD} -w ${PWD} --network app_network a6kme/jmeter -n -e -t ${PWD}/TestLoadOnApps.jmx -o ${PWD}/reports -l ${PWD}/TestResult.jtl

You will find the reports in jmeter/reports directory

Running JMeter in GUI Mode

  • on Mac docker run -it --name jmeter -v ${PWD}:${PWD} -w ${PWD} -e DISPLAY=$(ipconfig getifaddr en0):0 --network app_network a6kme/jmeter