Scalability is not your biggest concern, so stop acting like it is
I can’t count the number of times that I’ve heard things like ‘I was thinking of doing <insert approach here>, but heard that it doesn’t scale well once you hit more than about 1000 users’. It happens a lot. And you know why it happens? Because people who are new to developing think that how well their system scales is a big deal. I have a secret piece of information for you: scalability’s not the big deal you think it is.
At the time of this writing, Twitter is having some scaling problems. Twitter is using Ruby on Rails for their service, and a lot of their problems are being blamed on the fact that Rails apparently does not scale well to having millions of users. This has led a lot of new and prospective developers to choose something other than Rails, based on the statement that “Rails doesn’t scale”. But the reality is, Twitter is huge. And your game is not. There are users on Twitter with over 1500 followers – chances are, your game doesn’t even have that many users if you just launched it.
Scalability isn’t something you should be worrying about when you’re first starting out. You need to attract users, and keep them. As long as your game can handle 100+ users at once, you don’t need to worry about scaling. And trust me, most things can handle over a hundred users at once.
Something like 3/4’s of game projects that are started never see the light of day. When you’re first building your game, you need to focus on getting something out the door and playable – not making sure it’s absolutely perfect. That’s what the testing period and your initial playerbase will help you get figured out. Most of the other aspects of building your game aren’t a big deal – just get the original out there! Once you have something that people are playing, you’ll be able to evalulate it better and see what areas you can improve in – and hey, if your playerbase suddenly explodes, you’ll get to learn about how to make your game scale, too. But please, please – stop treating scalability like it’s your biggest concern.