mysql – 使用数据库复制部署Django Server的多个实例的解决方案

我已经编写了一个Django应用程序,可以将数据读/写到postgres数据库中,目前我已经为每个客户端部署了其中一个设备.我面临着必须在客户端站点上部署多个这样的实例.我需要保持所有数据库在实例中保持一致,每个实例与自己的数据库进行通信(本质上是一个多主设置)

我一直在研究各种复制解决方案(mySQL Cluster,PGCluster),但这些似乎都要求我让每个实例通过一个位置访问数据库,而我希望每个实例读/写它自己的数据库和数据库是在所有设备上保持一致.有没有人对解决方案有任何想法可能适合这个或我能看的其他地方?

值得注意的是,数据库写得很重,而不是重读

解决方法:

我将重点介绍杰克道格拉斯提供的wiki链接中列出的产品之一.

Galera是我最近听过很多的产品,但是还没有理由将它实现到生产环境中.

早在7月份,Percona撰写了一篇关于实施它的简短博客,但提到当时没有“生产”版本.

他们是since released的第一个主要版本,v1.0.弗拉基米尔本月已经脱掉了more light.并与一些benchmarks

由于你的写作繁重的环境,我强调这个用例:

Distributing writes across the cluster will harness the CPU power in slave nodes for better use to process client write transactions. Due to the row based replication method, only changes made during a client transaction will be replicated and applying such a transaction in slave applier is much faster than the processing of the original transaction. Therefore the cluster can distribute the heavy client transaction processing across many master nodes and this yields in better write transaction throughput overall.

免责声明:我不是Galeria或Percona的附属公司,并且还没有亲自使用它……

上一篇:是否必须使用GTID启用带有MySQL Replication的–log_slave_updates?


下一篇:MySQL复制滞后检查