I was thinking today of the last game I made that used turn based updates. Ie, at every hour, the game would assign players new resources, turns, etc. This was several years ago, and server speeds have gotten considerably better... but back then, it would take upwards of 20 seconds to update my game (also, back then, I didn't know I had to index my DB's). This got me into a small bit of trouble once with the server host...
Looking at my next project, I'm considering how best to implement the update file. Specifically, I think I'd like to pull all the user's data, calculate what values need to be updated, shove it all into either a class or array, then send it to a non-blocking cURL update function. I have absolutely no clue if this will truly be beneficial or not (which is the reason for the post), but my idea was that the non-blocking cURL call would send the DB update commands in the background while the main update.php script begins pulling and calculating the required data for the next user update. With a multi-core server, I was hoping this technique might make use of the extra core.