我正在研究接受文件上传的Rails应用程序,以及用户以后可以修改这些文件的位置。例如,他们可以更改文本文件内容或对图像执行基本操作,如调整大小,裁剪,旋转等。针对Rails应用程序使用的文件服务器的建议
目前,文件存储在与Passenger一起运行的服务器上,以便为所有应用程序提供服务要求。
我需要将用户文件移动到专用服务器以在我的设置上分配负载。目前,我们的用户在一周内上传大约10GB的文件,这不是很多,但最终会累积起来。
所以我正在通过关于如何实现应用程序服务器和文件服务器之间的通信的不同选项。我想从一个简单而又非常简单的解决方案开始。如果它稍后在多个文件服务器上扩展,我会非常高兴。
这里有一些不同的选择,我一直在研究:
- 亚马逊S3。我发现实施我的应用程序有点困难。它增加了“上传”上传文件的复杂性(可能多次),请注意,用户可以使用我的应用修改文件和图像。除此之外,这将是很好的“设置它,忘记它”的解决方案。
- 某种简单的RPC服务器,位于文件服务器上,透明地管理从应用程序服务器端查看时的文件。我还没有在这里找到任何标准和经过充分测试的工具,所以这在我看来是更理论化的。然而,在GitHub中构建和使用的Bert和Ernie看起来很有趣,但是可能太复杂了。
- MogileFS也似乎很有趣。没有看到它在使用(但这是我的问题:)。
所以我正在寻找不同的(也可能是基于标准的)方法如何实现Web应用程序的文件服务器以及它们如何在野外工作。