使用 AWS 存储原始临时上传图像(过滤后删除)
Store original temporary uploaded image (to be deleted once filtered) using AWS
我使用 PHP 构建了图片上传功能。实现的场景只处理服务器机器的本地文件系统,现在我需要重新实现该功能以适应 AWS。问题是 AWS 提供了 3 种类型的文件存储(EFS、EBS ans S3),我不知道如何处理使用场景的步骤 1 和 3:
原图上传并存储在系统中(重命名和消毒后)。
我从该图像创建了 3 个副本(小、中、大)
使用 Imagine 库过滤器。这 3 个副本旨在使用 PHP AWS SDK 复制到 S3。它们还针对更好的性能进行了优化。
原图被删除(因为它
大,没用过,删掉心理好)。
换句话说,将原始临时图像存放在哪里比较好?对于这个图像使用 EBS 或 EFS 还是与最终图像一起存储在 S3 中,然后删除它更好。
在延迟和执行速度方面,"nearest" EC2 的存储系统是什么?他们都需要一个 EC2 实例,但肯定其中一个实例更适合 temporary
的这种情况。
您的经验对我们来说总是非常宝贵的。非常感谢
我建议将图像保留在您的 EBS 卷上,因为您可以通过任何方式在处理后删除该图像。您的 EBS 卷是该图像处理的最快方式,因为它直接附加到 EC2 实例,然后将这 3 个图像移动到 S3。附加到您的 EC2 的 EFS 卷也适用于您的情况,但 EFS 价格昂贵且不是临时存储的好选择。
如果您将该大图像移动到 S3 然后对其进行处理,那么 S3 数据传输成本将会增加,并且由于该图像上传到 S3 需要时间,因此会涉及延迟。
因此,临时图像存储的最佳选择是 EBS 或 EC2 实例上的特定级别 EFS。
我使用 PHP 构建了图片上传功能。实现的场景只处理服务器机器的本地文件系统,现在我需要重新实现该功能以适应 AWS。问题是 AWS 提供了 3 种类型的文件存储(EFS、EBS ans S3),我不知道如何处理使用场景的步骤 1 和 3:
原图上传并存储在系统中(重命名和消毒后)。
我从该图像创建了 3 个副本(小、中、大) 使用 Imagine 库过滤器。这 3 个副本旨在使用 PHP AWS SDK 复制到 S3。它们还针对更好的性能进行了优化。
原图被删除(因为它 大,没用过,删掉心理好)。
换句话说,将原始临时图像存放在哪里比较好?对于这个图像使用 EBS 或 EFS 还是与最终图像一起存储在 S3 中,然后删除它更好。
在延迟和执行速度方面,"nearest" EC2 的存储系统是什么?他们都需要一个 EC2 实例,但肯定其中一个实例更适合 temporary
的这种情况。
您的经验对我们来说总是非常宝贵的。非常感谢
我建议将图像保留在您的 EBS 卷上,因为您可以通过任何方式在处理后删除该图像。您的 EBS 卷是该图像处理的最快方式,因为它直接附加到 EC2 实例,然后将这 3 个图像移动到 S3。附加到您的 EC2 的 EFS 卷也适用于您的情况,但 EFS 价格昂贵且不是临时存储的好选择。
如果您将该大图像移动到 S3 然后对其进行处理,那么 S3 数据传输成本将会增加,并且由于该图像上传到 S3 需要时间,因此会涉及延迟。
因此,临时图像存储的最佳选择是 EBS 或 EC2 实例上的特定级别 EFS。