2012-10-02 217 views
1

我正在写一个应用程序,它可以让你在云中共享文件。 您创建一个用户帐户,可以上传文件并将链接发送给朋友。亚马逊S3云架构

我使用亚马逊S3来保存数据。 但我不知道应该如何继续。

有些桶可以在S3中创建,也可以在这些桶中保存文件。 我想过为每个用户制作一个存储桶,但后来我读到一次只能有100个存储桶。

没有更好的方法来管理它,然后将所有用户文件保存在一个“目录”中。 这会变得非常混乱。我以前从未使用S3,我会非常感谢任何建议。 如果这是唯一的方法,什么命名约定被证明是最好的?

谢谢!

回答

1

尽管S3在一个存储桶中有一个扁平的结构,但每个对象都有自己的路径,就像您习惯的目录一样。

所以,你可以组织你的路径,像这样:

/<user-id>/<album-1>/... 

有一点要记住的是,并非所有的目录相关的功能都可用,如:

  • 拒绝访问/<user-123>/*
  • 从一个目录复制到另一个。
+0

好的......你的意思只是一个命名约定?或者你真的可以将它们存储在不同的路径中? – NSAddict

+1

@IlijaTovilo路径是对象的属性,所以是:) –

+0

好吧,愚蠢的我:D 刚刚看到它。 但最后一个问题: 你认为它会更好,存储在数据库中的文件路径,这样就可以生成文件名,以防止命名 - 冲突? – NSAddict