One of the issues companies that deal with many users and lots of data, is that the DB and DB access machines need to be built out for max users.
Blizzard went from a game company to a service company.
Webkinz is a toy company becoming a social game company.
Another example: Club penguin, Habbo hotel
Scaling is the major issue. It’s hard.
Currently games break up the world to simplify the problem. This is bad because it makes for a constrained game design. Further, this causes a waste of server time and energy. Not all groups are playing at peak. Further, it is complexity the user does not understand. They just want to play with their friends.
If you shard incorrectly, you have empty servers or over-capacitated servers.
$30-$90 million to make an online game, over 3-4 years.
Sun wants to make architecture to help small companies make great games without the need to shard with 'Project Darkstar'. More info http://www.projectdarkstar.com/
This is an application server for games. OS agnostic, game agnostic. But it would work for non game applications that require lots of data transactions, and might give us a glimpse into how data access will be in the future.
The technology is under gpl, but sun will make commercial licenses if asked.
Games are multiplayer, but characters are actually agnostic. Let’s distribute their actions without the developers needing to know about it.
Games are event driven, and have small tasks per action. What is hard is if two characters have contention for the same resource. All tasks are transactional. Use this to find conflicts and allow one character to get the resource and one does not. They are moving competing characters to the same server to optimize scheduling transactions.
All data and communications will go through darkstar. Abstracting the developer and client away from the data access.
The program can think of this as a single thread and a single machine.
If a box goes down, play continues. The players are not connected to a box; they are connected to a channel.
This also allows you to use the same machines for MULTIPLE concurrent games.
Go here for more info.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment