Recommend me an architecture for this Facebook application
- by andybaird
Firstly, this question is subjective. There is not a right answer for this question and it really depends on what works for you. I'm hoping to use this thread as a breeding ground for ideas. I hope this is acceptable in this medium.
I'm working on building a Facebook app that will be replacing an already popular app that gets ~50k hits a day. The original app is using a very typical LAMP setup with help from some Zend libraries for database layer extraction.
For the most part the app worked well, except to solve a lot of issues I ended up fragmenting tables to speed things up. As a result, I couldn't do a lot of things with the app that I wanted to (namely any processing using aggregate data that needed to be returned quickly)
So I'm starting to design plans for the next version of this application, and I have a whole bunch of new and cool features that I know would choke my current setup.
I'm looking for technological recommendations of data storage methods that scale well. The database does not necessarily need to be relational, simple key/value storage would suffice (although at present time I know little to nothing about KV stores)
What's your recommendation? How would you tackle this?
I'd like to take a completely free approach to this -- although I am most familiar and comfortable using PHP, I want to leave all technical options open.