Link to home
Start Free TrialLog in
Avatar of piximetry
piximetry

asked on

session sharing in a cluster

I have several servers in my cluster: A, B and C. The users are directed to one of these servers by a load balancing solution. What we need is a fast decentralized/redundant method to store serialized session data. Standard PHP sessions are fast enough, but they're local to each server... which won't work for a cluster.

We're not interested in a solution using a database. I was thinking in the direction of memcached, but the PHP API seems to be a bit underdeveloped.

Does anyone know the ideal solution for this supposedly common problem?
Avatar of snoyes_jw
snoyes_jw
Flag of United States of America image

Avatar of piximetry
piximetry

ASKER

I'd rather use something else than msession. According to a comment by the author on that page, it's an abandoned project... eek.
ASKER CERTIFIED SOLUTION
Avatar of RWJDCom
RWJDCom
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
This is a little bit from the Zend site...

Session Clustering:

Performance boost (up to x10)
Locking mechanism to ensure data integrity
Works seamlessly with existing PHP code
Integrates with load balancers
Linear scalability for additional machines
Zend platform looks interesting, but I want to go with an open source and free solution... I know they're out there. ZP costs about $1000 per year per processor, so that would add up too quickly.
It's worth checking it out.  You can get a free developers license for a year.  I don't know if there are any open source session clustering solutions out there.  If I come across one I will definately post it here for you.

Sorry I couldn't give you a better answer.
Okay, no problem :-) The Zend platform does seem promising, but the only thing I need is the session clustering. I'm leaning towards memcached right now...
A minor update: I've been experimenting with memcached and it looks quite promising. I found out that memcached is also used for major sites like facebook, slashdot, etc... the only question is how well it performs for session management, because a failing memcached backend should not result in people not being able to login.
I decided to make my own system using memcached backends, but RWJDCom's answer was a reasonable solution to the question as it was posed.