如何做到与多个服务器同步?

我们有3个负载平衡器的Web服务器,例如192.168.1.1,192.168.1.2,192.168.1.3。如果我上传192.168.1.1的文件或目录,它应该反映在其他的Web服务器。 同样,如果我上传一个文件或目录在192.168.1.2或192.168.1.3这应该反映在其他两台服务器自动。我可以做到这一点?

我读了一些网站,他们说rsync会帮助你,但是当我search关于rsync它使用主服务器,并使用客户端服务器concepts.this意味着我可以上传一个文件或目录在任何一台服务器,然后做rsync。

有没有解决这个问题的简单方法?

像clusterfs一样是解决你的问题的理想方法(假设你运行的是Linux)。

您的select通常是:

  • 提供文件共享并在每台Web服务器上安装该文件并将文件存储在那里。

  • 不要将文件存储在文件系统上,而是使用(高可用性)数据库,并将其作为BLOB存储。 一个非常普遍的方法。 通常你的应用程序已经使用了数据库,这使得应用程序服务器几乎是无状态的,通过将应用服务器转移到数据库层,解决了很多locking,复制,HA,一致性和访问问题,并解决。 一旦达到PB级的(相当大的一部分),维护起来可能是昂贵的。

  • 适当的集群文件系统,允许通过光纤通道或iSCSI对共享存储进行并发读写块级别的访问。 企业存储arrays往往非常昂贵,但这可以很好地扩展。 集群文件系统通常需要为集群FS软件的每个节点(昂贵的)许可。 在专业应用程序的企业环境中也是一个非常常见的解决scheme

  • 使用分布式对象存储。 这是更开源的解决scheme,使用低端商品硬件,在软件中创造冗余和可扩展性。 这是一种常见的“云”方法,对象商店经常是像Aamzon S3这样的在线服务,而不是自己构build。