It's past midnight here, so if the following is rubbish, apologies :-)
Suppose we had a few separate MySQL databases for a single language
running on different servers around the world. As far as I can tell, the
only real problem would be edit conflicts; nothing else would have to be
in "real-time". So why not have something like this:
* Someone hits the "Save" button below his new edit
* The server which handles the request/the database informs all other
servers that it is about to change that article
* The other servers return "OK", or "nope" if that article was changed
* If any of the other servers answer "nope", the others are informed
that the article won't be changed, and the local user gets an edit conflict
* If all others answer "OK", the change is commited to the database. The
other servers know that they have an old version of that article and
sync it sooner or later
Summary: By *not* replicating each and every byte in real-time, but
rather exchanging yes/no information, this might be fast enough to keep
the wait upon saving to a minimum. Yes, the details would prove to be
tricky (think page deletions), but think a server on each continent -
the ultimate redundancy! :-)
Magnus