README
[demos/kafka/chat] / haproxy.cfg
index f334457..d78a358 100644 (file)
@@ -3,10 +3,14 @@ defaults
   mode http
   timeout client 10s
   timeout connect 5s
-  timeout server 10s
+  timeout server 10m
   timeout http-request 10s
   log global
 
+global
+  stats socket ipv4@:8401 level admin
+  stats timeout 2m
+
 frontend stats
   bind *:8404
   stats enable
@@ -14,10 +18,21 @@ frontend stats
   stats refresh 10s
 
 frontend frontend
-  bind :80
-  default_backend webservers
+  bind :8400
+  default_backend random
+  use_backend %[req.hdr(X-Shard),map(/usr/local/etc/haproxy/sharding.map)]
+
+backend random
+  server b1 backend-1:8080 check
+  server b2 backend-2:8080 check
+  server b3 backend-3:8080 check
+
+backend backend_1
+  server b1 backend-1:8080 check
+
+backend backend_2
+  server b2 backend-2:8080 check
+
+backend backend_3
+  server b3 backend-3:8080 check
 
-backend webservers
-  server s1 web1:80 check
-  server s2 web2:80 check
-  server s3 web3:80 check