正确的方法来组织Node.js应用程序的rackspace cloudfiles中的许多用户的图像?

我有一个简单的Node.js应用程序。 我将有用户configuration文件,每个用户可以上传几个图像。 图像将被上传到Rackspace Cloudfiles。

我目前正在使用Rackit模块。

目前它的工作方式是:

我向Rackit传递一个文件,将其上传到Rackspace Cloudfiles,并将CDN url返回给该映像(映像名称已被rackit散列)(url类似于下图):
http://c15142174.r14.ca2.rackcdn.com/Y20h30Jd918aHV3pKROzejdq

Rackit目前将所有图像保存到一个容器中。

这是我的问题:
1)我应该将每个用户的图像保存到一个单独的容器(为了隐私,安全,并确保一个用户不能抹去其他用户)?

2)简单地将上面的url ref存储在一个数据库中并且在将来以这种方式引用它就足够了吗? 我可以指望这个url不变?

3)将用户的图像加上用户名或哈希值,将图像与给定的用户关联起来会更有意义吗?

最佳实践方法是什么?

谢谢

我被提到这个伟大的文章,真的很好地回答了我的问题: http : //www.rackspace.com/knowledge_center/content/best-practices-using-cloud-files

总结我的用例文章:

1) 使用多个容器 。 在一个容器中放置大量图像会降低速度,特别是因为您可以多次写入同一个容器。 如果2个用户同时尝试将图像上传到同一容器,则这可能是特别有问题的。 因此,每个用户的不同容器在这里是有意义的。

2)如果需要, 可以使用伪文件夹进行组织。 你可以命名你的图像(这是一个在rackspace云中的对象)“/user123/ducks/duck_small.jpg”。 在这种情况下,图像的名称是整个string(包括斜杠)。

3) 在数据库中存储对图像的引用 。 访问云文件列出容器的内容将比简单地从数据库获取图像的cdn url慢得多。