Bir çerez üzerinden yük dengeleme olan bir sistemim var, ancak alternatif olarak bir URL parametresi kullanmak istiyorum. (Özellikle, çerezleri desteklemeyen bir ön uç uygulamam var). Kurulumum biraz karmaşık - çok oyunculu bir sistemim var ve aynı oyunu oynayan farklı kişilerin aynı sunucuya gitmesini sağlamak için bu çerezle bir çubuk tablo kullanıyorum. URL parametreleri hiçbir şey yapmıyor gibi görünüyor, ancak bu harika çalışıyor. Bu hepsi haproxy 1.5dev17 ile
İlgili arka ucum:
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
option http-server-close
maxconn 2000
contimeout 5000
clitimeout 50000
srvtimeout 50000
backend simulate
option httpchk OPTIONS /simulate/api/status
stick-table type string len 40 size 5M expire 30m
stick store-response set-cookie(SIMULATE_STICKY_SESSION) table simulate
stick on cookie(SIMULATE_STICKY_SESSION) table simulate
stick on url_param(SIMULATE_STICKY_SESSION) table simulate
server app1 10.0.2.11:8080 cookie app1 check inter 10000
server app2 10.0.3.11:8080 cookie app2 check inter 10000
SIMULATE_STICKY_SESSION uygulamasının benim uygulamam tarafından oluşturulduğunu unutmayın (oyuncu ekibine göre).
URL'yi aradığımda, bir jsessionid iletmem gerekiyor (böylece Tomcat doğru oturumu bulacak). Bu yüzden yapıyorum
Yapışkan oturum parametresini yanlış sunucuya gittiği zamanın% 50'si olarak alıyor gibi görünmüyor. Bir sorgu dizesi (sonra? İşareti) sonra param kullanarak çalıştı ama o da işe yaramadı. Neyi yanlış yapıyorum?