support balancing of client load across servers in an ensemble

                 Key: ZOOKEEPER-571
             Project: Zookeeper
          Issue Type: Improvement
          Components: quorum, server
            Reporter: Patrick Hunt

Currently the ensemble does not ensure a balanced load across servers in an 
ensemble. Clients randomly connect to
a server, which typically balances the number of sessions. However there are 
problems with this:

1) session count is balanced, but not session load
2) if server A goes down all of the sessions on that server migrate to other 
servers in the cluster randomly, this is fine, however
when server A comes back into service it will have no sessions, and migration 
of sessions from other servers may take time

The quorum should probably have some way of broadcasting load, and occasionally 
re-balance the sessions based on
this information. Might be tricky though, want to ensure that we aren't 
constantly ping-ponging sessions to servers.
Probably need some hysteresis as well as limit the frequency. Real time tuning 
would need to be supported.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

Reply via email to