我以前从未使用过多台服务器同步。我正在从事一个需要多个MariaDB服务器来同步特定表的项目。每个表只会在一个服务器上更改,但每个表将在不同的服务器上进行更改。
表A、B、C和D: A-设置表仅在用户更改设置时更新。 B,C,D-工作表-这些表将每隔几秒钟更新一次,由各个服务器完成工作。 主服务器-更改A;需要B,C,D实时更新. 服务器2-更改B;需要A实时更新. 服务器3-更改C;需要实时更新。 服务器4-更改D;需要实时更新。
在复制教程中,我看到了很多关于单向和双向的信息,但是我没有找到任何与我想做的事情相匹配的信息。
数据必须实时同步,因为信息是时间敏感的.如果服务器之间失去了连接,只要恢复连接,我仍然需要同步数据。
这些表都将由各自服务器上的PHP代码更新。服务器都在运行Linux。这是可以用MariaDB自己完成的吗?还是用另一种方式处理这件事更好呢?我真的很想避免将整个数据库双向复制到所有服务器,因为除了主服务器和创建它的服务器之外,大多数数据对于任何服务器都是不必要的。
发布于 2017-09-17 04:03:17
忘记有多台机器试图相互同步。而是想想..。
计划A:使用一台服务器完成所有工作。那就没有同步了。
计划B:利用网络让每个人都能写信给主人,主人会不断地单向地复制给任意数量的奴隶。奴隶们可以从。
Plan C:某种形式的集群,比如Galera,这样多个节点就可以相互复制,并且可以对每个节点进行读/写。
在“关键读取”方案的任何同步或复制环境中小心。这是当用户在博客上写评论,然后在下一个网页上找不到它时。问题是它还没有被“同步”。
要回答你的问题:除了我描述的三件事之外,没有“同步”机制。
More
连接问题并不是一个严重的问题--在100.0%的时间里,有许多云服务非常接近可用。
延迟并不是一个真正严重的问题--你会惊讶于网站有多远。在今天的互联网上,千里之行“什么都不是”。
尽量减少从用户到web服务器的往返次数,如果它们相距很远。并尽量减少前端和数据库之间的数据库调用数。请注意,在一种情况下将web服务器放置在客户端附近,在另一种情况下放置在数据库附近是有益的。
在主从设置中,每天几千兆字节的流量是一个合理的上限.你说的车流量是多少?
https://stackoverflow.com/questions/46260264
复制相似问题