Design patterns 内容交付网络算法、示例、代码
为内容分发系统编写软件时必须考虑哪些设计因素,例如管理数据的同步和分发、将下载重定向到最近的服务器等 我也在寻找开源CDN(内容交付网络)软件的例子。我能想到两个项目,而且 请注意,CDN不仅仅是硬件带宽。CDN是软件和硬件的组合Design patterns 内容交付网络算法、示例、代码,design-patterns,open-source,cdn,Design Patterns,Open Source,Cdn,为内容分发系统编写软件时必须考虑哪些设计因素,例如管理数据的同步和分发、将下载重定向到最近的服务器等 我也在寻找开源CDN(内容交付网络)软件的例子。我能想到两个项目,而且 请注意,CDN不仅仅是硬件带宽。CDN是软件和硬件的组合 我想要的是流媒体软件和静态资产。我很难弄清楚如何在服务器之间正确同步流媒体(因为文件访问可能是相当随机的),而静态资产似乎更容易一些,因为这是一次性请求。您是否意识到内容交付网络的价值纯粹在于其拥有的服务器数量以及服务器与最终用户的距离 你确定你走的是正确的道路吗?C
我想要的是流媒体软件和静态资产。我很难弄清楚如何在服务器之间正确同步流媒体(因为文件访问可能是相当随机的),而静态资产似乎更容易一些,因为这是一次性请求。您是否意识到内容交付网络的价值纯粹在于其拥有的服务器数量以及服务器与最终用户的距离
你确定你走的是正确的道路吗?CDN不是一个软件。请至少在谷歌上搜索或者在维基上查找。
虽然我不知道任何开源项目,但也许值得总结一下CDN到底是什么?毕竟,仅仅使用一堆Web服务器并不能将您带到任何地方 CDN软件必须解决的关键问题:
- 同步。所以,你在美国、欧洲和亚洲都有整洁的农场,但你如何确保它们都有你试图提供的文件的相同版本?如果其中一个服务器场没有当前版本,您如何告诉负载平衡器使用哪个服务器场
- 日志记录。在CDN中,通常需要向客户计费,因此需要测量流量和文件访问。但是,由于每个服务器场中有多个服务器场和多个Web服务器,您需要以某种方式集中日志记录
- 认证。毕竟,CDN不仅仅是向每个人交付HTTP内容的Web服务器。如果您有一个用于视频流的CDN,它实际上只限制某些用户的访问,该怎么办
- 负载平衡。虽然这通常是单独完成的,但它也链接到同步部分。所以我是一个来自韩国的用户,试图访问这些内容。负载平衡器发现首尔的农场是最近的,但不幸的是,首尔的农场还没有内容。因此,CDN和负载平衡器需要确定最近的包含内容的服务器场是什么。让我们看看。。。法国巴黎和美国洛杉矶都有内容。哪个应该上菜
- 确定哪些文件需要在何处复制。日本的Windows更新可能在日本和其他一些亚洲国家非常流行,但欧洲和美国对它的请求可能较少,因此此文件可能不需要在CDN中的每个服务器场中复制