Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Because everyone says master-master is not recommended.

But if you think about it...1 write server is hardly enough!

So, how would you set it up (high-level, not tutorial-level) so that it works out well?

share|improve this question
What's it for? How many writes are we talking about, and how often is the written data queried? – Satanicpuppy Dec 9 '09 at 1:48

When I think about it, I realise that one writable server is plenty. HA takes care of availability, and sharding takes care of capacity.

share|improve this answer

Even if you have some sort of absurd application that needs to do trillions of writes, you'd probably be better off just having a number of unconnected servers available through some sort of round-robin interface, and just combining the data later in a more controlled environment...There is virtually no way to be sure of replication when you're getting hammered like that.

In the end though, most database applications don't perform many writes in comparison to the reads.

share|improve this answer

I think you'll find that most of your problems can be solved by other means: eg

SELECTS queueing up behind UPDATES that take ages:

  • Switch to InnoDB

Too many selects for 1 machine to handle:

  • Go for a master -> many slaves setup. It's much easier to maintain, you just need to modify your application to write to one DB and select from another.
share|improve this answer

Given that some of the largest sites in the world run off of single master instances, your premise is flawed. The way to solve your problem is to insert a caching layer (memcached for non-persistent data and something like CouchDB for persistent data) and avoid the database like the plague. Put into place asynchronous processes to insert data into the database and realize that users rarely need to see data that is up-to-date...a few seconds or minutes behind is usually ok. Sharding and multi-master setups are just panacea to get around the architectural changes that will really speed up your system.

share|improve this answer

Your Answer


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.