Socket.IO Chat with haproxy & redis
A simple chat demo for socket.io
How to use
Install Docker Compose, then:
$ docker-compose up -d
And then point your browser to
This will start four Socket.IO nodes, behind a haproxy instance which will loadbalance the requests (using a cookie for sticky sessions, see cookie).
Each node connects to the redis backend, which will enable to broadcast to every client, no matter which node it is currently connected to.
# you can kill a given node, the client should reconnect to another node $ docker-compose stop server-george
- Multiple users can join a chat room by each entering a unique username on website load.
- Users can type chat messages to the chat room.
- A notification is sent to all users when a user joins or leaves the chatroom.