[horde] clustering horde with memcached
Liam Hoekenga
liamr at deathstar.org
Tue Jan 2 13:30:21 PST 2007
It depends on the version of Horde and the version of the PECL memcached
extension you're using.
In Horde <= 3.1.1, the memcache sessionhandler has a function,
_getConForId(), that uses the sessionID and the list of memcache servers
to figure out which memcache server has the session data. This was done
because prior to PECL memcache 2.x, the memcache extension didn't
support connection pooling. Since this is a strictly PHP based
solution, it should work with any release of the PECL memcache extension.
PECL memcache 2.x >= 2.x supports connection pooling, and with the
release of Horde >= 3.1.2, _getConForId() is dropped in favor of using
the connection pooling (and connection hashing) internal to the memcache
extension.
I'm gonna guess that connection pooling and PECL memcache >= 2.x works
ok w/ Horde <= 3.1.1 (since the pooling is implemented PHP), but to
make it work with Horde >= 3.1.2, you'll need to use memcached >= 2.0.
Liam
Kevin Konowalec wrote:
> We're running a cluster of 12 machines for our 75,000+ user base.
> They're all set up in a round-robin and users can conceivably hop from
> one machine to another in the course of a session (due to a number of
> factors like the server they're on going down or whatever). We've
> only got one central server running memcached for all of them though.
> Is there a better way to do it? If I tell horde to use 1..N memcached
> servers will it then scan all the servers until it finds the session
> when a user flops from one server to the next?
> --Horde mailing list - Join the hunt: http://horde.org/bounties/#horde
> Frequently Asked Questions: http://horde.org/faq/
> To unsubscribe, mail: horde-unsubscribe at lists.horde.org
More information about the horde
mailing list