在我的应用程序中,我使用S3
来存储用户数据。用户有文件,每个文件都有自己的ID,我需要为每个文件存储其数据和快照图像(png)。我将数据存储在以下架构中:
Main files bucket >
File_id_folder >
file.data
file.png
File_id_folder >
file.data
file.png
File_id_folder >
file.data
file.png
我的问题是从S3检索文件需要花费很多时间。获得5个png文件大概需要一分钟。
我的png文件大小约为100K。我使用N.California
区域并从Israel
下载文件。 png文件正在通过iOS应用程序下载(用于初始化UIImage)
我可以做些什么来改善S3的表现?
答案 0 :(得分:4)
如果您想将图像保留在s3中,并且需要尽可能快地从遥远的地方(如以色列)下载它们,请考虑在您的s3存储桶上使用AWS云端分布,以便可以从最靠近您下载位置的数据中心。
添加cloudfront很容易,并且几乎没有任何成本,至少要测试并看看它是否有帮助。
如果在添加cloudfront之后,它仍然比您认为的要慢,我会研究解决方案的其他方面。由于与AWS无关的其他因素,它可能会很慢。