Kas*_*bbe 7 naming file naming-conventions amazon-s3 amazon-web-services
我目前正在使用以下命名方案:
/#{bucket_name}/#{customer_name}/fi/le/na/filename.jpg
Run Code Online (Sandbox Code Playgroud)
因此,dsca007.jpg为客户命名的文件的图像bent将存储在此处:
/images/bent/ds/ca/00/dsca007.jpg
Run Code Online (Sandbox Code Playgroud)
但我可以理解S3想要一个不同的形式:

资料来源:http://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html
来源:https://www.youtube.com/watch?v = uXHw0Xae2ww#t = 535
我知道他们希望我将我的命名方案改为:
/#{bucket_name}/fi/le/na/#{customer_name})filename.jpg
Run Code Online (Sandbox Code Playgroud)
但他在YouTube视频中显示了这张幻灯片:

这是否意味着我的第一种方法很好?
我真的很喜欢第一个结构,因为我能够获得一个客户拥有的文件列表,有没有办法用最后提到的命名方案列出客户下的所有文件?
通过运行此命令,可以很容易地确定每个客户使用的存储量:
s3cmd du s3://images/#{customer_name}
Run Code Online (Sandbox Code Playgroud)
我怎么能用新的命名方案呢?
如果在构建密钥时不使用某些唯一的字符串,那么您很快就会遇到密钥覆盖问题。
dsca007.jpg不是很独特。具有相同名称的文件很有可能会被上传到您的s3存储桶。在这种情况下,您将丢失旧文件或出现错误,具体取决于您的配置。
例如,这就是我们正在使用的:
https://s3.amazonaws.com/bucket_name/user_media/videos/screenshots/cmXRyLRQxe9R139023426817_vid001.jpeg
其中前缀:cmXRyLRQxe9R139023426817_是我们生成的自生成字符串,并与原始文件名vid001.jpg相连,然后上传到s3。
| 归档时间: |
|
| 查看次数: |
10393 次 |
| 最近记录: |