Very interresting approach, i have a similar issue. My problem is that i need to use sticky-sessions for two upstreams, each having the same number of upstream targets, but i need to have them pairwise. From your example above that would mean that a user is forwarded to server "server1:8080" and "server1:9080" and not to "server2:9080". So some kind of affinity between the upstream hosts. I could not find a way to make this work.