jean-frederic clere wrote:
Jess Holle wrote:
An ability to balance based on new sessions with an idle time out on such sessions would be close enough to reality in cases where sessions expire rather than being explicitly invalidated (e.g. by a logout).
Storing the sessionid to share the load depending on the number of active sessions, brings a problem of security, no?
To the degree that you consider Apache vulnerable to attack to retrieve these, yes.

I prefer the health check request approach below for this and other reasons (amount of required bookkeeping, etc).
Of course that redoes what a servlet engine would be doing and does so with lower fidelity. An ability to ask a backend for its current session count and load balance new requests on that basis would be really helpful. Whether this ability is buried into AJP, for instance, or is simply a separate request to a designated URL is another question, but the latter approach seems fairly general and the number of such requests could be throttled by a time-to-live setting on the last such count obtained.

Actually this could and should be generalized beyond active sessions to a back-end health metric. Each backend could compute and respond with a relative measure of busyness/health and respond and the load balancer could then balance new (session-less) requests to the least busy / most healthy backend. This would seem to be *huge* step forward in load balancing capability/fidelity.

It's my understanding that mod_cluster is pursuing just this sort of thing to some degree -- but currently only works for JBoss backends.
This wrong it works with Tomcat too.
mod_cluster works with Tomcat, but according to the docs I've seen the dynamic (health/session metric based rather than static) load balancing only worked with JBoss backends.

Or has this changed?

--
Jess Holle

Reply via email to