恕我直言,我不同意迄今为止对该问题的其他两个答案。为了清楚起见,我并不是说他们错了,我只是提供不同的观点。
正如 Bulk 雄辩地解释的那样,CDN 性能的关键当然是“N”,但这并不意味着您不能构建自己的 CDN。问题是它是否值得花时间(根据定义,钱)。
我们生活在一个廉价服务器甚至更便宜的虚拟机的世界中。当然,大型 CDN 网络在全球拥有数千/数百万台服务器,但那是因为它们有数千/数百万个站点要服务。根据您的站点/应用程序的大小,您真正需要的资源与您的站点所需的资源一样多。如果你很小,最低限度可能是美国每个海岸的 VPS,欧洲一个,亚洲可能两个,澳大利亚一个。当然,硬件成本对于您的典型主页来说太高了,但它们肯定不是极端的,如果您首先考虑 CDN,它们可能在您的预算范围内。
对我来说,商业 CDN 服务只是为 PaaS 提供了便利,但没有什么能阻止您获得 IaaS 并建立自己的平台。
关于这个主题的另一件事:
我曾经读过 David Heinemeier Hansson(Ruby on Rails 的创建者)或引用他的人的评论,其内容大致如下: 37 Signals 的所有者担心 DHH 正在使用 Ruby 构建他们的应用程序. 那时,Ruby 还是很模糊的。几乎所有的 Web 主机都提供 PHP、Perl 和 Microsoft 技术。当被问及世界上只有少数 Ruby 主机这一事实时,DHH 问道:“那么你需要多少?”
对我来说,重点是你需要看看最适合你的需求和应用程序的需求,而不一定是拥有数百万服务器的人的想法。