[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Linux-cluster] MySQL Cluster

Tiago Cruz wrote:

You could use DRBD in primary-primary mode with GFS on top and external locking in MySQL. It would work, but performance would suffer a great deal. It depends on what kind of throughput you need.

Yes... I'm not tried this yet, maybe should I try... I'll get some good
redundancy of servers!

But, I was researching about mysql "master -> master" that should be a
good throughput/ redundancy. Did you already use this?

See below - it's a.k.a. round-robin replication.

Depending on your application, you could use something like MySQL round-robin replication. In that configuration, MySQL servers replicate in a ring.

The Ring, it's some like this: (?)

A -> B -> C -> A

Right? So... If I lost the "B" server... "A" will can't sync "C"?

Sound like dangerous for me :-)

Failover can be handled, and if you only use MyISAM tables, you can just "LOAD DATA FROM MASTER" to resync. If all the servers are 100% in sync, though, with replication log pointers being the same, you could just thump the master.info file on the next server in the chain and short the replication circuit as a quick fix until you can resync with the fixed server.

PostgreSQL can be set up to do star-topology replication, so losing one server wouldn't lead to replication breaks, but you'd have to implement it yourself with triggers and some pl/perl magic.

The downside is that there is a race condition inherent in the design, if you think about it carefully. (DRBD+GFS+ MySQL with external locking doesn't suffer the race condition.) If this potential race condition is not a concern for your application, then performance wise, it is likely to be the optimal solution for you. Since you said that fail-over is not an option for you, I am assuming that the load you plan to put through it is too great for one server to handle (I have seem low-spec servers with MySQL churning out 100,000+ queries per second when tuned up correctly). If you are dealing with this sort of load, DRBD+GFS+MySQL isn't going to cut it and round-robin replication with the mentioned race condition is pretty much your only option.

Well, this LAMP-HA will be hands a lot of end-user application, like
Wordpress, Joomla, phpBB and etc, so I don't know if I'll have race
condition :-(

Probably not. The race condition itself is very difficult to provoke under normal circumstances. You would have to have two separate threads operating on the same records, and in specific order for it to arise.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]