we are all aware of the popular trend of MMO games. where players face each other live.
My area of concern, is storage of player moves and game results.
Using Csharp and PostgreSql
The game client is browser based ASP.NET and calls Csharp functions for all database related processing
To understand my query, please consider the following scenario
we store game progress in a postgres table. A tournament starts with four players and following activity
- Each player starts with 100hitpoints
- player 1 makes a strike (we refer to a chart to convert blows to hitpoints with random-range %)
- player 2 has 92HP, and returns a light blow, so player1 has 98hp
The above two round will now be in Game Progress Table, as
ROW Player1HP Player2HP Strikefrom StrikeTo ReturnStrikeHP Round TimeStamp StrikeMethod
1 100 100 0 0 0 0
2 98 92 P1 P2 2 1
There is a tremendous flow of sql queries,
There are average/minimum 100 tournaments online per 12 minutes or 500 players / hour
In Game Progress table, We are storing each player move
a 12 round tourament of 4 player there can be 48 records
plus around same number for spells or special items
a total of 96 per tourament or 48000 record inserts per hour (500 players/hour)
Are there any particular settings or methods available to improve Just insert_table operations
thanks
arvind