cloudfoundry:如何使用文件系统

我打算使用cloudfoundry paas服务(来自VMWare)来托pipe我的node.js应用程序。 我已经看到它在服务层和node.js框架中支持mongo和redis。 到现在为止还挺好。

现在我需要将我的媒体文件(用户上传的图像)存储到文件系统中。 我有存储在Mongo中的元数据。

我一直在search互联网,但还没有得到好的信息。

你不能这样做,原因如下:

  • 有多个主机运行你的应用程序。 他们每个人都有自己的文件系统。 应用程序中的每个正在运行的进程都会看到一组不同的文件。
  • 运行特定应用程序的主机可以随时改变。 事实上,每当你重新部署应用程序时,它们都会改变。 每当在新的主机上启动一个进程,它就会看到一组空文件。 每当旧主机上的进程停止时,所有文件都将被永久删除。

你必须以另一种方式解决这个问题。

  • 将媒体文件存储在MongoDB GridFS中。
  • 将媒体文件存储在Amazon S3或Rackspace Cloud Files等对象存储中。

大多数云解决scheme中的文件系统是“短暂的”,所以你不能使用FS。 你将不得不使用像S3 / DB这样的解决scheme

Interesting Posts