我正在建立一个网站,需要提供300-500 GB的静态数据,每个月增加5-10 GB。这些文件大多是照片。
我所有的潜在用户都将位于加拿大,其中约95%位于一个城市(多伦多)。
我有很多选择,但我不知道哪一个最适合我的情况。
首先,我不认为我需要使用CDN,因为我的大多数用户将以多伦多为基地。我只需要找到一个位于多伦多/附近的数据库提供者。
我想主持我的网站在一个VPS在开始,因为它是容易设置,应该没有问题,以容纳我的初始用户。
问题是我应该在哪里托管500 GB的静态文件。我应该把它们和我的网站一起放在VPS上吗?或者我应该把它们托管在云平台上,比如BackBlaze B2或者AmazonS3?硬盘是足够我的静态文件,虽然我想主持网站本身在一个SSD。
我估计每个用户每次访问将得到大约10 MB的数据。假设我每天有大约5000名访问者,我应该能够每天提供50 be的数据,而没有明显的性能下降。用户将把大部分时间花在地图上(我正在使用Google API),因此使用连续的ajax调用,它将是高度动态的。
我不太担心在开始的时候获得完美的可用性,只要网站大部分时间都在运行。
发布于 2017-12-22 19:37:57
我不打算花太多的钱,因为你可以很容易地用公开定价来解决这些问题。通常,VPS托管大量文件是最昂贵的,其次是AWS,其次是B2。
如果您想要高可用性,您需要两个服务器和一个负载均衡器。这在AWS、Azure和Google中相当容易,一些较小的提供商也可以做到这一点。
AWS S3很棒,并且在内存中内置了冗余,您的数据存储在三个数据中心,并且有可能提供服务。很少访问的类存储可以减少开销,对于低容量的文件托管也很好。每月1.5 30的费用大约是每月30美元。系统良好,可靠,易于添加CDN。AWS在加拿大有一个地区。
有很多带宽相当便宜,至少对于AWS来说。数字海洋和其他像样的VPS提供商是相似的。您应该考虑在VPS上有足够的存储空间。这里的缺点是SSD存储可能会相当昂贵,并且没有冗余--但是如果您从单个VPS运行,那么无论如何您都有一个单一的故障点。
B2是便宜的存储,但更昂贵的带宽。我认为他们只有一个数据中心,所以那里的冗余较少。他们将在美国某处,所以延迟和带宽应该相当好,但没有AWS那么好。又一次失败。
如果您使用VPS,那么您应该考虑使用CDN。如果设置正确,CDN可以显著降低带宽成本。
CloudFlare免费层非常棒,您可以花钱购买更好的服务和更多的功能。除了比服务器更快地为用户提供服务之外,它还将更快地为远程用户服务。谷歌也喜欢快速的网站,他们的爬虫可以从任何地方连接。
你优先考虑的似乎是性能,价格和合理的可用性。AWS S3 IA类可能是一个很好的折衷,但是如果您能够忍受它稍微慢一点,您可以尝试B2。
您可以将CloudFlare的免费(或付费)服务放在亚马逊S3的前面。这里的说明。
发布于 2017-12-23 12:08:34
我增加这一点只是因为它似乎从迄今为止提出的优秀建议列表中消失了,但是如果您有大量的数据,请不要忽略将您自己的工具包放在一起的可能性。这似乎有点像上世纪90年代,但它仍然是一个很好的选择。
如果您得到/构建了一个像样的1U服务器,您可以在其中放置至少两个大的、快速的磁盘,并且RAID-1它们。您一个月的1.5 the吞吐量完全符合大多数共址服务的规范。而且,尽管有可能在某件事发生时有几天的故障,但使用高质量的硬件将最大限度地减少这种中断的可能性,并且有一些明智地选择的货架备件(PSU!)将有助于缩短这种中断的持续时间。
https://serverfault.com/questions/889385
复制相似问题