为新站点提供大约 300-500 GB 静态数据的经济有效的方法是什么?

为新站点提供大约 300-500 GB 静态数据的经济有效的方法是什么?

我正在建立一个网站,一开始需要提供大约 300-500 GB 的静态数据,并且每月增加大约 5-10 GB。这些文件主要是照片。

我所有的潜在用户都位于加拿大,其中约 95% 集中在一个城市(多伦多)。

我有很多选择,但我不知道哪一个最适合我的情况。

首先,我认为我不需要使用 CDN,因为我的大多数用户都位于多伦多。我只需要找到位于多伦多或附近的数据库提供商。

我一开始想在 VPS 上托管我的网站,因为它易于设置,并且可以毫无问题地容纳我的初始用户。

问题是我应该把这 500 GB 的静态文件托管在哪里。我应该把它们和我的网站一起托管在 VPS 上吗?还是应该把它们托管在 BackBlaze B2 或 Amazon S3 等云平台上?HDD 足以容纳我的静态文件,尽管我想把网站本身托管在 SSD 上。

我估计每位用户每次访问将获得大约 10 MB 的数据。假设我每天有大约 5000 名访客,我应该能够每天提供 50GB 的数据,而性能不会明显下降。用户大部分时间都会花在地图上(我使用的是 Google Maps JavaScript API),因此地图将具有高度动态性,并持续进行 ajax 调用。

我并不太担心一开始是否能够获得完美的可用性,只要网站大部分时间都处于运行状态即可。

答案1

我不会详细讲成本,因为你可以使用公开定价自己轻松计算出来。通常,托管大量文件的 VPS 最昂贵,其次是 AWS,然后是 B2。

如果您想要高可用性,则需要两台服务器和一个负载均衡器。这在 AWS、Azure 和 Google 中相当容易,一些较小的提供商也可以做到这一点。

AWS S3

AWS S3 很棒,并且内置了冗余功能 - 您的数据存储在内存中,并可能由三个数据中心提供服务。不经常访问的类存储可以减少费用,并且非常适合小容量文件托管。每月 1.5TB 的费用约为每月 30 美元。系统良好、可靠、易于添加 CDN。AWS 在加拿大有一个区域。

AWS LightSail/VPS

AWS Lightsail VPS 的带宽非常便宜,至少对于 AWS 来说是这样。Digital Ocean 和其他不错的 VPS 提供商也类似。您应该考虑在 VPS 上拥有足够的存储空间。缺点是 SSD 存储可能非常昂贵,而且没有冗余 - 但如果您从单个 VPS 运行,无论如何都会有一个单点故障。

BackBlaze B2

B2 存储便宜,但带宽更贵。我认为他们只有一个数据中心,所以冗余度较低。他们将位于美国某处,因此延迟和带宽应该相当不错,但不如 AWS。另一个单点故障。

内容分发网络 (CDN)

如果您使用 VPS,则应考虑使用 CDN。如果设置正确,CDN 可以显著降低您的带宽成本。

CloudFlare 免费套餐非常棒,而且您可以付费获得更好的服务等级和更多功能。它不仅能比您的服务器更快地为用户提供服务,还能更快地为远程用户提供服务。Google 也喜欢快速的网站,他们的爬虫可以从任何地方连接。

推荐

您的首要任务似乎是性能、价格和合理的可用性。AWS S3 IA 级可能是一个很好的权衡,但如果您可以忍受速度稍慢,您可以尝试 B2。

您可以将 CloudFlare 的免费(或付费)服务放在 Amazon S3 前面。此处有说明

答案2

我之所以添加这一点,是因为到目前为止提出的优秀建议列表中似乎缺少这一点,但如果您有大量数据,请不要忽视将自己的工具包放在一起的可能性。这可能听起来像是 20 世纪 90 年代的做法,但它仍然是一种很好的选择。

如果你拥有/构建一个不错的 1U 服务器,你可以将至少两个大容量、快速的磁盘放入其中,并将它们组成 RAID-1。你每月 1.5TB 的吞吐量完全符合大多数主机托管服务的规格。尽管可能的当出现问题时,您将会遇到几天的停电,使用高质量的硬件将最大限度地减少此类停电的可能性,并且拥有一些精心选择的备用电源(PSU!)将有助于减少此类停电的持续时间。

相关内容