在Ubuntu上从镜像文件树运行多个应用程序

我有一个Apache服务器负载全部服务于各种Rails应用程序。 跨所有服务器的代码库是相同的,但应用程序允许用户上传。

问题是,我如何在这里最好地pipe理文件系统? 我只想将代码部署到一个位置,并且还希望用户上传可用于群集上的任何节点。

基本上,我想我正在寻找一个单一的文件系统,所有的服务器工作。 这是甚至高性能? 镜像是更好的select,还是某种共享的networking文件系统?

你会怎么做?

这些服务器都是Ubuntu Linux。

您可以查看群集文件系统,例如GFS或OCFS。 其他明智的NFS,也许 – 虽然我怀疑你可能有过时的文件句柄的问题,因为我们试图用NFS来为我们类似的事情。 这取决于你的应用程序的工作。

我们有三个Web服务器和一个分段框。 停滞框将文件推送到NFS上的网站内容。

我对这个问题的理解(这是粗略的,因为我没有参与调查或修复)是web服务器将打开一个文件,说index.html和临时服务器将推出一个新的index.html副本。 新版本会覆盖旧版本,但是当networking服务器去读它时,他们得到了陈旧的文件句柄错误,因为他们仍旧引用旧版本的文件,而这个旧版本已经被覆盖并被新文件replace。 所以他们试图引用一个文件,他们有一个文件句柄,但不存在。

如果用户上传的性能很关键,请使用镜像。 否则,使用nfs。 我假设你有一些在Rails中实现的caching,如果你有大量的应用程序的服务器负载。

安德斯