SvennoJ said:
I worked on such a system myself in the past long before it was called cloud computing. Yes the server can do it much more efficiently then running a separate game for each player, yet it still needs to keep a seperate data instance for every player running alongside. I mean if it were a simple case of everyone experiencing the exact same thing, thus minimizing data instance needs server side, you can more easily pre-compute all that and put it on the disc. If the player has a lot of influence on the world (destruction, foot prints, tire marks, displaced items, smoke grenades, etc) then the server load grows quickly. |
@Bolded: You are correct, this is the reason that MS built the Orleans platform to solve exactly what you just mentioned. For a distributed cloud computer platform, you need a way to monitor, distribute and process pieces of code. Its not a simple process and highly complex. I have done something very similar but on a much smaller scale. This is the reason why I keep telling people that its not so simple that Sony or Nnintendo can just do the same thing. The software and hardware takes years to develop. One of the key things that Azure does that helps is its capability to spin up a server anywhere in the world to perform this type of work. Resources can be added or removed in seconds which is why this is something that MS can do because of the money they have spent with the Azure platform.
@Second Bolded: This is correct but then incorrect. People do not know how Azure works. Azure only spins up virtual servers. The software that runs the Azure platform is very complex. All resources within the Azure platform are controlled by software. The reason for this setup is that if any of the actual physical hardware goes down, the customer will see absolutly no downtime. You can actually pull the plug on a rack of servers where a customer software is running and they probably would barely see a blip. Depending on your service agreement, you can an instance of your software running on multiple servers and datacenters around the world. This is the reason MS can state 100% uptime for hosting companies software on Azure.
EDIT: I forgot to mention that when people say that "its only a virtual server", you have to realize that Azure uses the same tech as the hypervisor within the X1. The virtual servers are not the same as you running virtual PC or Citrix on your desktop. The hypervisor are very thin allowing the virtual server to gainbare metal access to local resources on par as if you were running it directly on the server. People should read up on hypervisors its pretty interesting tech. I believe VMWare still have the best but MS Hyper V has come a long was and is a solid competitor.
For that cloud system you are talking about, you could do that using Azure. The key issues you talk about would be corrected by Azure to instantly spin up a server at a datacenter local to your location.
I agree that Orleans is not setup for graphics work so it would not be used to make a game look better. The way that the game would look better is if the hardware resources are freed up from other task so that it can concentrate on the immediate things the user is doing. Think of how ingame non interactive movies look so much better than the actually gameplay. All the resources are set to render the assets without having to deal with other aspects of a game that is processed behind the scenes.