A couple of things, I read a few “tutorials” on MMO architecture and they all said never let the client connect directly to the game server.
Also to have a separate: World server, Proxy server, Login server and Cache server.
Here is the guide in question, and I will also link the design: http://www.mmorpg.com/blogs/FaceOfMankind/052013/25185_A-Journey-Into-MMO-Server-Architecture