Advertisement Jump to content
  • Advertisement
Sign in to follow this  
  • entries
  • comments
  • views

Lions, Tigers, and Re-designs! Oh My

Sign in to follow this  


Well, after posting yesterday, I picked up a development book I hadn't read in a while, Massively Multiplayer Game Development 2, and noticed an excellent method of monitoring the processes and providing a great fault tolerance for keeping your processes up. While I will have to modify the base architecture to use it, these methods will be a life save for providing almost 100% uptimes.

The method I'm refering to is as follows:

There are two "Big Brother" Windows services that are running on the physical server. The first to start up is registered in the database as being the Primary Big Brother. It stores it's name, process ID, and last check in the database table.

The Primary "Big Brother" is responsible for monitoring the processes (logical servers) running on the physical server. It checks their statuses and last update in the database table to validate the process(es) are still running. If the Primary "Big Brother" detects that a process has stopped (Big Brother checks every 5 seconds), it will take the steps needed to restart the process and will notify the Logging server that the process stopped so that system operators can check to see if there are any issues.

The Secondary "Big Brother" is responsible only for monitoring the Primary "Big Brother". If it notices that the Primary "Big Brother" has stopped working, it will promote itself to Primary "Big Brother", demote the original Primary "Big Brother" to Secondary, and then will restart the original Primary "Big Brother", so that it will start monitoring the new Primary "Big Brother".

I will be modifying the base architecture to include this fault tolerance method, but I will be modifying it to allow for intelligent restarts of processes to support the immediate notification and sending of trace logs to the server monitoring application.

While most people here on GameDev are staunch nay-sayers about MMO's and the actual ability to create an Indie MMO, I think that by creating a great base architecture that is re-usable and configurable, you can and will be able to create an Indie MMO. That's why I'm toiling at the keyboard every night documenting, designing and coding. So hopefully someone who actually reads my journal and is interested will have a chance to voice some input and insight into what they would expect this architecture to do for them.

If you have a great architecture already in place then you can concentrate on the actual game development and content, which is 90% of the battle.

Thanks again for reading and please comment!
Sign in to follow this  


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!