Skip to content

divident/dsk-haproxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Load balancing with haproxy

Project was made to compare performance of haproxy algorithms depending on the web application usage frequency

Requirements

To run project you will need:

  • docker
  • docker-compose

Usage

Firstly you will need to build node-app container

cd node-app
docker build -t node-app .

Next you need to init docker swarm

docker swarm init

Last step will run the application

sudo docker stack deploy -c docker-compose.yml haproxy

If everything is setup correctly you should be able to

$ sudo docker service ls
[sudo] password for piotr: 
ID                  NAME                MODE                REPLICAS            IMAGE                        PORTS
gsalhcohjkzi        haproxy_app         replicated          3/3                 node-app:latest              *:30001->8080/tcp
ygd8sce6w5j6        haproxy_proxy       replicated          1/1                 dockercloud/haproxy:latest   *:12001->80/tcp

Application server will run on you localhost

$ for i in {1..10}; do printf "$(curl -s -X GET http://localhost:12001)\n"; done;

License

MIT