In nginx Plus, one can use Session Persistence for load balancing.
For some apps, their data/state (session data) is not really separated
(e.g. PHP Sessions without special backend, legacy apps).
In that case, requests for a session should always go to the same backend (route).
Also when fabio instances are also used as backends (nested upstream),
Session Draining would be helpful, too, for the same kind of apps.
As session detection can be very different, some kind of go callback offered by fabio
would allow the admin to tailor it, like passing in a dump of HTTP headers and
the go callback would return a session ID for fabio to decide.
In nginx Plus, one can use Session Persistence for load balancing.
For some apps, their data/state (session data) is not really separated
(e.g. PHP Sessions without special backend, legacy apps).
In that case, requests for a session should always go to the same backend (route).
Also when fabio instances are also used as backends (nested upstream),
Session Draining would be helpful, too, for the same kind of apps.
As session detection can be very different, some kind of go callback offered by fabio
would allow the admin to tailor it, like passing in a dump of HTTP headers and
the go callback would return a session ID for fabio to decide.