Hacker News new | ask | show | jobs
by bmatheny 6669 days ago
I'm thinking this might be a 'bad' idea unless you are also hosting the site on EC2. Having significant latency in your session handling will bring your site to a crawl due to IOWAIT on your web servers. Obviously making a request across the net for session data will be slow compared with a request across a local network.

Now, assuming you are also hosting your web servers on EC2, I would recommend using neither S3 or SimpleDB for hosting sessions. S3 is more appropriate for static data, and SimpleDB is still in early Beta (as in, the API is subject to change and you have no SLA).

Session data is largely meant to be ephemeral. Consider using a standard MySQL (or similar) session backend with a circular hash for distribution to different nodes. Unless you are doing a ton of traffic, you can get by with a single machine running the session backend. The MySQL backend scales to a lot of concurrent users.

1 comments

this is a little more complicated/ costly then i care to implement on a new site. Yes the site is on ec2, but i think i am going to seriously avoid MySQL in aws. if a server crashes your log files are not valid, because the virtual machine hard drive gets disposed. Setting up MySQL on ec2 seems like it should have at least 4 servers running. I will wait till traffic demands it.