Replica-Sets in MongoDB will act like master-master settings with MySQL. It will replicate and mirror all you data from your primary database to another. It also supports fail-over. You will not need to worry about your data anymore. In MongoPress, we have tested this setup with 3 servers. 2 servers were set as masters and another one set-up as the arbiter (traffic controller). For more information on MongoDB Replica-Sets, please read this Tutorial.
MongoPress Replica-Set support can be turned on or off in the config.php file under MONGODB_REPLICAS, but please note that this will not establish any form of replication for you, only that it will now be supported. The actual configuration of the replica-set must take place within the MongoDB console.
With MongoPress, we this has been an important feature we wanted to support from day one, as it's the most important feature related to scaling, allowing you to spread the load. but to do so, you must create the collection first before adding more shard servers into the configuration server. To setup sharding for MongoPress, follow the instructions on MongoDB website - Sharding Configuration Tutorial:
Our steps:
1) Add your 1st shard server into the config server
2) db.runCommand({enablesharding : "mongopress"});
3) db.runCommand({shardcollection : "mongopress.objs", key : {_id : 1}});
4) db.runCommand({shardcollection : "mongopress.slugs", key : {_id : 1}});
5) Add all your shard servers after this...
Pros:
a) High data availability
b) Easily spread the load
c) Instant horizontal scaling
Cons:
a) Sharding Quirks - such as no direct control of exactly what information goes where
b) "Scary" durability and scaling stories with auto-sharding due to not knowing where the data is located
However, replica-sets come highly-recommended and have proven extremely stable during our tests.