I designed the architecture I wrote about in this blog post a few years ago (in my 3rd year of university I believe) -- There are technologies now like Erlang that are probably more suited for threaded servers, but this design has worked pretty well for my online game.