Take the 2-minute tour ×
Arqade is a question and answer site for passionate videogamers on all platforms. It's 100% free, no registration required.

In massively multiplayer games, the servers are routinely restarted, for example EVE Online performs "maintenance" daily, and World of Warcraft performs it weekly.

What goes on during it, and why is it necessary?

share|improve this question
29  
It's to give people that play MMO's obsessively a few hours to have a real life. –  user8376 Apr 5 '11 at 21:57
2  
@Mark or a few hours to sleep –  Xantec Apr 6 '11 at 3:35

3 Answers 3

up vote 21 down vote accepted

It's also a question of cost and predictability.

MMOs are relatively low stakes, and tolerant of downtime (particularly with region specific downtime windows). Google gets heavy traffic 24/7, but a MMO like WOW will fluctuate massively throughout the week. The impact of brining down servers during those valleys of usage is disproportionately lower than it is in other businesses with more regular activity periods.

By implementing regularly scheduled maintenance windows they also gain predictability. I would hazard a guess that, if they wanted to, 90+% of what happens in regular maintenance could be moved concurrently. They might still have some downtime windows occasionally for big things (replacing core network infrastructure, upgrading major patches, etc).

However there are some trade offs. They would still need occasional maintenance windows (when do you schedule them? Would people be more upset by occasional random maintenance windows than a predictable, consistent one?) Would the systems be much more complex? Would it be much more costly to add new features, innovate and maintain?

Also think about the nature of the servers in an MMO vs other online games like Starcraft 2. In Starcraft 2 the games are pretty much happening between two players. The servers have to coordinate the games, but there's a lot more fault tolerance and less need for global synchronization. Starcraft seems much more like a tradiontal website architecture than WOW, which is a more unified system. In WOW everyone needs to be in instant lockstep.

Basically the short answer is that there are dozens of reasons that a maintenance window can be used for, and the reasons for not doing one with an MMO specifically are pretty slim. The whole MMO software system can be much simpler and more predictable if they schedule and use a regular maintenance window, giving you a better game cheaper.

share|improve this answer
5  
In regards to non-regular maintenance, FFXI actually does this really well. Emergency maintenance obviously happens when it happens, but regular maintenance is scheduled and announced weeks in advance. People generally are happy with it and not taken by surprise (unless they're totally oblivious), and the upside is that we only have a few hours of maintenance every 8-12 weeks or so! –  Shinrai Apr 5 '11 at 17:40
    
I was about to make a comment on FFXI as well. There general is no weekly maintenance. –  Zeno Mar 23 '12 at 19:53
    
FFXI has a smaller user base these days than does WoW, though. Less users means less data generated and less to purge. –  Crowbeak Oct 29 '12 at 9:27

All MMO's have massive amounts of data in databases or caches. They can either purge very old data, cache old data, optimize new data, make backups.

And this is just from a software point of view. From a hardware point of view they can make update server hardware, perform defragmentation, etc.

Check this link for futher reading.

share|improve this answer
    
Awesome! Thank you for the link. –  badp Apr 5 '11 at 14:11
    
Wouldn't backup be software point of view? Or maybe both if it involves setting up new HDs? After all data is software... I got confused :S –  RedDragon23 Apr 5 '11 at 14:13
    
Hmz, backups are software, I was actually thinking of physically saving a disc or something, but I can see how it's still software in the end. –  Khez Apr 5 '11 at 14:16

They may need to deploy updates to binaries on the server software that are transparent to the clients. This generally requires a complete application restart, and a window to test and repair any issues that might come as a result of that deployment. They may need to rebuild indexes and update statistics in the database engine to improve performance.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.