返回 登录
0

传统CDN撞上天花板

作者简介:

王康(Terence Wang)
白山联合创始人兼产品副总裁
王康先生主要负责产品的完善与升级、产品开发流程把控及进度协调、产品设计改进及定期优化、产品全生命周期管理等工作。他带领团队实现白山首款产品CDN-X的多项创新,降低CDN使用门槛,极大拓展了CDN客户资源,提升了白山品牌价值,促进整体CDN市场的扩大与发展。
王康先生曾就职于网宿科技,任该公司产品及售前高级总监,负责技术团队的运营工作;拥有10年CDN行业经验,专注于提高产品输出的高质量和高可靠性。

就时间而言,自诞生到成为互联网企业的刚需,CDN(内容分发网络)仅用了20年。但在全世界CDN普及率不断扩大的趋势下,中国的普及率仍然相对低下。赛迪顾问的统计显示,2015年,CDN在韩国的普及率达90%以上,在美国为80%以上,而这一数字在中国仅为50%左右。

尽管CDN已经成网站服务的标配,但由于计费不透明、安全性等问题,影响了它在中国的普及。尤为突出的是,一些企业不愿采用CDN的原因在于缓存内容更新的速度不能满足其需求。

一般来说,通过自身的技术手段改善页面,能在一定程度上避免内容更新速度不及时的问题。例如,把网站做成动态形式,内容就可以实时回源取得,无需依靠缓存。如果页面的大部分内容为静态,内容分发就需要依靠缓存,而缓存的更新具有滞后性,这时网站内容更新速度难以满足企业的要求。例如,某新闻网站刊登的内容一旦出现错误或者被黑客篡改,为避免更严重的事态,全网内容需要即时更新,那么传统的CDN缓存机制就暴露出其更新速度慢的缺陷。

1.消息队列的局限


在传统CDN的缓存机制中,全网内容更新基于消息队列的形式实现。当内容更新时,由一台中心服务器管理上千台设备,中心需要确认所有设备的状态和跟踪设备的推送情况,当设备失败时需要重试。通过设备跟踪、失败重传的方式,系统可以实现一次内容在全网的更新完成。通常问题如下:

1. 内容更新有可能同时涉及到数量庞大的URL,消息队列处理一条URL所用时间一般在上万毫秒级别,一次全网内容的完整更新则需要数分钟甚至数十分钟,平均需要5分钟左右,这样的时间显然无法满足企业需求;

2. 一旦网络出状况,以目前的网络实际状况来看,传统内容更新方式有可能出现部分服务器在任务有效时间内无法获取更新。此时,中心收到跟踪反馈后会重传,最终效率还要再打折扣;

3. 消息队列只通过任务开始的时间顺序对任务进行排队处理,而任务更新的紧迫程度往往和任务开始的时间顺序不相符,这导致任务更新的不公平。

2.优化路径为何失败


如果从精准度上针对消息队列算法进行优化,可以满足企业对内容更新速度的要求。目前可以实现的优化路径,一种是通过域名链,即DNS区域覆盖的方式探知为客户服务的设备。这样可以只针对为客户服务的设备进行内容更新,更具精确性,因此减少了不必要的工作。另外,可以通过边缘节点向中心服务器主动发出更新询问的方式进行内容更新。

这两种优化方式一般叠加使用,其效果可以将更新时间从5分钟优化至1分钟左右。这种效果虽然显著,但对于传统企业来说,5分钟或1分钟都达不到对内容即时更新的需求。

3.即时更新的突破口


SHAQUE技术由白山的技术团队自主研发,解决了传统CDN技术上速度和效率不能兼得的问题。SHAQUE技术是借鉴蚁群效应中的模拟进化算法和P2P对等技术,利用智能优化算法和peer节点的松散耦合性,使所有存储服务器上的文件可以在极短的时间内完成内容更新,进而保障缓存服务器上的用户不管在浏览还是在交互上都有质的飞跃。

P2P是依赖于网络中参与者的计算能力和带宽,由多台客户端计算机通过直接交换,来共享计算机资源和服务的技术。在P2P架构中,千万台彼此连接的计算机都处于对等的地位。网络中的每台计算机既充当网络的请求者,又能对其它计算机的请求做出响应,提供资源和服务。

至今演进到了第三代的P2P技术是一种结构性的分布式网络架构,它适用于P2P的网络结构拓扑也逐渐变多。比较流行的有DHT结构、树形结构和网状结构。SHAQUE技术利用的是双层P2P网状结构,其为P2P提供了最大的容忍性和动态适应性。

全网设备按物理区域分成数个区域网络,每个区域网络根据选举算法选择一个leader,同时将这些leader组成一个网络。这样一来,全网服务器都成为周围服务器的中心,让内容病毒式扩散,再根据终止反馈使算法收敛,让整个系统形成全中心结构的无队列消息推送机制,这时候对于所有机器来讲,其收到更新内容和反馈的时间就等于机器之间的TTL时间,一般在数毫秒到数十毫秒内。

蚁群算法的基本思想是正反馈与分布式协作,单体通过简单的指令选择更好路径,而这一选择又使得整体路径的被选择机会更大,最终使整体涌现出最优路径选择。蚁群算法是一种渐进式收敛算法,这种收敛算法的收敛速度与解的质量远远高出其它搜索算法。SHAQUE技术融合蚁群算法,利用整体路径优化的特性,优化内容传播的路径,最终使每台服务器都能不断通过反馈得到其能推送到的最快服务器组。

4.推送1秒内完成


借助SHAQUE技术,白山的服务器每天可以处理上千万条URL,每条的处理都在1秒之内。

病毒式推送机制的缺点是当设备数量增多时全网更新速度会减慢。但经过反复实验,500台设备的推送时间为600毫秒,千台设备的推送时间是700毫秒。一般超大型CDN厂商的全网服务器为上万台,其速度仍然可控制在1秒之内。

随着设备的持续增加,SHAQUE智能识别模块还可进行横向扩展,即只推送给为客户服务的设备,从而使SHAQUE技术长久保持“秒推”效果。

评论