1

I'm developing a Real-Time game which should hold thousands of players in real-time. What would be the best server structure for this?

My idea was using 2 server clusters - one for the Server End (all the computing side) and one for the Database end, where a load balancer is "responsible" for each of the clusters. One main server will receive the requests from the users and send back the IP address of the relevant server that the user can work this.

The database cluster will use database replication for consistency between the databases.

I'm using .NET + MSSQL for the game.

Nate
  • 2,151
  • 6
  • 26
  • 41
roman
  • 149
  • 6
  • This would kind of depend in part on how decoupled your design is, too. And where your servers will be vs. where your players are...great decoupling and optimization of systems won't translate into great performance if your servers are in NY and your players are in Lithuania. – Bart Silverstrim Jan 24 '11 at 14:56
  • I agree - we are planning on geographical load balancing as well, where as a player in Germany will get the closest local load balancer to him, which in turn will return the IP of a server from it's server cluster. The question is - is the design right and scalable? – roman Jan 24 '11 at 14:58
  • Please don't use the term cluster as it is related to the term failover cluster which is a High Availability Cluster where only one of the nodes is active with the SQL Server... – Gabriel Guimarães Jan 24 '11 at 20:16

1 Answers1

1

Latency will be your biggest enemy for gaming. Gamers don't tolerate lag, so you must keep it to a minimum.

There are some interesting articles on game server infrastructure in which you may be interested:

http://www.eveonline.com/devblog.asp?a=blog&bid=769

http://wiki.eveonline.com/en/wiki/RAMSAN

http://www.datacenterknowledge.com/archives/2009/11/25/wows-back-end-10-data-centers-75000-cores/

https://stackoverflow.com/questions/1418749/how-are-massively-multiplayer-online-rpgs-built

Cakemox
  • 25,209
  • 6
  • 44
  • 67