我有一个位于美国的网站,我想在中国build立一个镜像站点,该站点使用PHP + MYSQL,两台服务器之间的networking质量很差。
我尝试在两个mysql数据库之间build立一个数据库同步,但由于networking质量差(极高的延迟,数据包丢失,有时甚至无法build立连接),总会有冲突。
有没有更好的方法来做镜像?
许多组织处理这个挑战。 有一些标准的方法:
在某些情况下,您可能有一个不经常编辑的dynamic网站。 您可能采取快照方式,而不是连续的数据库复制。 这将涉及频繁的备份,将其复制到远程服务器,并按计划进行恢复。
我试着在两个mysql数据库之间build立一个数据库同步,但是由于networking质量不好,总会有冲突
我假设你的意思是冲突的数据更新。
那么唯一可行的解决scheme就是尽可能地对系统进行分区 – 这样会削弱系统的可用性,除非你能完全隔离它们,否则可能需要更改代码。
如果你真的需要这样做,为什么不使用MySQL多主复制又名MySQL循环复制链接
鉴于networking条件不好,会有复制延迟,因此您的select将有不一致的结果,但复制应该仍然工作正常。 另一个可行的select可能是在香港举办,你会得到更好的networking连接。