如何在多个 Web 服务器之间共享资产?

get*_*nur 17 linux file-sharing web-server

我有多个 Linux Web 服务器连接到负载平衡器,我喜欢在这些服务器之间共享资产(例如图片、视频和其他内容)。做这个的最好方式是什么?

目前,我已将所有 Web 服务器安装在文件服务器上,但我担心它会在流量大的情况下出现故障。我怎样才能避免这种情况发生?

提前致谢。

Fre*_*sen 12

根据您的需要,有多种方法可以做到这一点。

  • 在网络服务器上使用安装有 fx NFS 的中央文件服务器
  • 同上,但多余,所以如果一个倒下,另一个接管
  • 使用某种同步工具(例如 rsync)并将文件本地托管在网络服务器上。然后设置一个 cronjob 以特定时间间隔在服务器之间同步文件。
  • 使用 CDN,例如 Amazon S3、Akamai 等。

如果您有很多新文件,前两个是最好的。如果您不经常添加或更改文件,第三个将是理想的解决方案,因为用户将在尚未同步的静态内容上获得 404。

最后一个选项在许多方面可能是理想的,但也可能是这 4 个选项中最昂贵的。您还需要重写您的网站以支持这一点。