Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Are sticky Sessions possible? #9

Open
frogueat opened this issue Feb 23, 2016 · 1 comment
Open

Are sticky Sessions possible? #9

frogueat opened this issue Feb 23, 2016 · 1 comment

Comments

@frogueat
Copy link

Some applications need (in terms of caching) to handle the same user on the same frontend (load balanced "site") if possible (for performance reasons). Most commercial Loadbalancers do have this function in an "more experimental" manner because for a load balancer is this behavior kind of special.
Crucial is the failover of sites. If a site fails, only these "slots" in the list of available sites (mostly a permutation of healthy sites to 256 slots) may get substituted with a permutation of all existing healthy sites.
Say there are 4 sites. The list is like this: Slot1: site1, ... Slot4: site4, Slot5: site1 ...Slot8: site4. If site1 fails, Slot1, Slot5, Slot9 ... has to be replaced with site2, site3, site4.
Tricky is what to to do, if site1 will come up healthy once more! I don't know for now - but i could find it out if i ask the right people ;-)

Would be great if neutrino could provide this feature.

@blessonpaul
Copy link
Contributor

Sticky session is definitely feasible. This is going to be another pool balancer.
http://neutrinoslb.github.io/neutrino-doc.html#poolbalancers

Sticky session need to inspect the request, send the request to the end point which served for the same user last time. As you mentioned, we need to take into account all the use cases where end point going down/up etc. We need to find a good algorithm/data structure to store and find the earlier sessions.

We will prioritize this feature

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants