Thursday, January 26, 2012

Server side data storage and access

One of the biggest issues Chess Buddies has is performances - far too often the app just gives up waiting on the server to respond to a request. As a user, this is frustrating to say the least. So if Chess Juice is going to be a better mousetrap, it has to perform really well. Toward that end, I'll be using a split data storage approach on the server. For games in progress, where performance is a premium, all storage will be done using Lucene instead of a traditional sql-based server like MySQL. Lucene is very fast for look-ups, which is critical for checking on new moves for example.

For archival storage, I'll use MySQL for all completed games, keyed by game number and indexed on player name. This should allow for reasonably fast look-ups even after the archive gets larger. A simple User table will hold the game number keys for all games that user has played.

So that's what I'm working on right now on the server side. Should have the core done by the end of this weekend, that's my goal anyway.

No comments:

Post a Comment