AWS S3 EC2 EBS 混淆

AWS S3 EC2 EBS 混淆

目前,当用户上传照片/视频时,我会将其上传到我的网站的根目录中。

/var/www/mysite/pics/hash/example_filename.jpg/var/www/mysite/videos/hash/example_filename.mp4

我用它move_uploaded_file();来存储它们。

我对在 S3、EFS 和 EC2 中存储文件有什么区别感到困惑。

我应该将用户上传的图像/视频存储在 S3 或 EFS 或 EC2 中吗?

答案1

首先,您显然对此没有做过任何研究,而这正是我们希望所有 serverfault 用户都做的事情 - 所以请记住这一点,“必须更加努力”:)

EC2 是 AWS 的计算方面之一 - 它是虚拟化的 CPU 和内存方面,但重要的是它不是存储磁盘映像的地方。

EBS 是块级存储,通常包含 EC2 VM(AWS 术语中的“实例”)的磁盘映像,但它只是块存储 - 默认专用于单个 VM 的磁盘。根据您的性能和预算需求,有多种类型可供选择。另外值得注意的是 - EBS“磁盘”是固定大小的,如果您想要 20GB,那么这就是您得到的和您支付的,无论磁盘映像中实际存储了多少数据。

S3 只是一个对象/文件存储,据我所知,目前还没有办法直接从存储在那里的磁盘映像启动(不过这可能会改变),但它本质上是无限的,你只需为存储的内容付费,而且它可以很容易地设置为通过互联网共享任何给定的文件,通常是通过 http/s 请求。它的性能不如 EBS,但对于基于 Web 的负载来说相当不错。也就是说,它不是你想把文件放在那里同时分享给成千上万的人的地方,你需要一个像 CloudFront 或 Akamai 这样的 CDN 来实现这一点。

如果您需要通过互联网访问您的文件,且并发用户数量相对较少,那么 S3 可能非常适合您 - 它非常便宜、非常灵活并且属于行业标准。

无论如何,都要做更多的研究:)

相关内容