CN104717231B - 内容分发网络的预分发处理方法及装置 - Google Patents

内容分发网络的预分发处理方法及装置 Download PDF

Info

Publication number
CN104717231B
CN104717231B CN201510166748.3A CN201510166748A CN104717231B CN 104717231 B CN104717231 B CN 104717231B CN 201510166748 A CN201510166748 A CN 201510166748A CN 104717231 B CN104717231 B CN 104717231B
Authority
CN
China
Prior art keywords
edge server
distribution
edge
advance
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510166748.3A
Other languages
English (en)
Other versions
CN104717231A (zh
Inventor
梁瑛玮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Blue It Technologies Co ltd
Original Assignee
Beijing Blue It Technologies Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Blue It Technologies Co ltd filed Critical Beijing Blue It Technologies Co ltd
Priority to CN201510166748.3A priority Critical patent/CN104717231B/zh
Publication of CN104717231A publication Critical patent/CN104717231A/zh
Application granted granted Critical
Publication of CN104717231B publication Critical patent/CN104717231B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种内容分发网络的预分发处理方法及装置,其中,所述方法包括:根据预定条件确定需要预分发的边缘服务器的列表,其中,所述预定条件包括以下至少之一:边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域;向所述列表中的边缘服务器进行预分发。采用本发明提供的上述技术方案,解决了由于文件只能全网预分发导致的耗时较长以及全网预分发时,各CDN边缘节点会产生较大的回源带宽,导致客户源站带宽负载较高的问题,实现了根据预定条件判断哪些边缘服务器需要进行预分发,以实现避免全网预分发、节省时间和带宽开销的同时,最大可能地达到预分发的目的效果。

Description

内容分发网络的预分发处理方法及装置
技术领域
本发明涉及通信领域,更具体地说,涉及内容分发网络的预分发处理方法及装置。
背景技术
预分发是内容分发网络(Content Delivery Network,简称为CDN)服务的其中一项基本功能,是为了将热点的大文件(例如视频、软件等)预先加载到CDN边缘节点上,然后再开放给网民访问,以提高网民初始访问时的访问效率。
CDN服务商收到客户某个频道的预分发任务后,将分发任务下发到该频道的所有CDN边缘节点服务器上;所有CDN边缘服务器收到指令之后,从源站拉取指定的文件,存储在服务器本地缓存;待所有边缘服务器都拉取完毕之后,再通知客户预分发任务执行成功,客户可以将访问地址向网民公开并提供访问。
在相关技术中,文件会采用全网预分发的形式下发到边缘节点服务器上,但这样耗时时间比较长,各CDN边缘节点会产生较大的回源带宽,导致客户源站带宽负载较高,虽然相关技术中还提供了一种根据人为选择对部分区域的节点进行预分发的技术方案,但这样的技术方案首先准确程度不高,其次,其预分发的边缘服务器不一定是当前最需要进行预分发的服务器。
相关技术中,目前尚无有效的技术方案实现根据边缘服务器的当前服务状况有针对性地分区域进行预分发。
发明内容
本发明提供了一种内容分发网络的预分发处理方法及装置,以至少解决上述问题。
根据本发明的一个方面,提供了一种内容分发网络的预分发处理方法,包括:根据预定条件确定需要预分发的边缘服务器的列表,其中,所述预定条件包括以下至少之一:边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域;向所述列表中的边缘服务器进行预分发。
优选地,所述服务状况包括:该边缘服务器的回源速度和网民访问该边缘服务器的速度,根据边缘服务器上报的该边缘服务器的服务状况确定所述列表包括:将所述回源速度小于或者等于所述网民访问该边缘服务器的速度所对应的边缘服务器添加到所述列表中,其中,所述回源速度为边缘服务器从源站获取需要预分发内容的速度。
优选地,根据边缘服务器上报的该边缘服务器的服务状况确定所述列表之前还包括:根据所述边缘服务器的日志按照预定时间间隔检测所述服务状况,并基于检测结果确定所述边缘服务器的所述回源速度和所述网民访问该边缘服务器的速度。
优选地,根据以下至少之一参数计算所述边缘服务器的回源速度:执行预分发指令时的回源日志中的参数、用户访问未预分发的内容且在缓存中没有命中的需要回源的访问日志中的参数。
优选地,至少根据以下参数计算所述网民访问该边缘服务器的速度:用户访问缓存Cache已经命中内容的访问日志的参数。
优选地,所述方法还包括:根据所述内容执行商指定的预分发区域构建对应的底层位置location,其中,所述构建的底层location的格式为运营商编号-大区编号-省份编号,所述省份编号对应的省份所属的地理区域为除所述大区编号对应的地理区域外的其他地理区域。
优选地,根据所述内容供应商指定的预分发区域确定所述列表包括:获取所述底层location所对应的流量调度策略,并根据所述流量调度策略和所述构建的底层location逐级向上匹配确定所述列表。
优选地,还包括:当所述列表中的边缘服务器执行预分发失败时,根据所述边缘服务器所处的底层位置location中的其他边缘服务器的执行情况对所述边缘服务器进行处理。
优选地,根据所述边缘服务器所处的底层location中的其他边缘服务器的执行情况对所述边缘服务器进行处理包括:当所述边缘服务器所处的底层location中的其他边缘服务器存在执行预分发成功的边缘服务器时,则将所述执行预分发失败的边缘服务器退出当前预分发任务设备列表,并将所述执行预分发失败的边缘服务器挂起,以及将所述执行预分发失败的边缘服务器进入后台重试队列;当所述边缘服务器所处的位置location仅存在所述执行预分发失败的边缘服务器或所述location中的其他边缘服务器均执行预分发失败时,则向所述内容供应商反馈预分发执行失败。
根据本发明的另一个方面,还提供了一种内容分发网络的预分发处理装置,包括:确定模块,用于根据预定条件确定需要预分发的边缘服务器的列表,其中,所述预定条件包括以下至少之一:边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域;预分发模块,用于向所述列表中的边缘服务器进行预分发。
通过本发明,采用根据边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域,上述条件之一确定需要预分发的边缘服务器的列表,并向上述确定的列表发送预分发网络内容的技术方案,解决了相关技术中,尚无有效的技术方案实现根据边缘服务器的当前服务状况有针对性地分区域进行预分发的问题,实现了至少根据边缘服务器的服务状况、内容供应商指定的预分发区域判断哪些边缘服务器需要进行预分发,以实现避免全网预分发、节省时间和带宽开销的同时,最大可能地达到预分发的目的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为根据本发明实施例的内容分发网络的预分发处理方法的流程图;
图2为根据本发明实施例的内容分发网络的预分发处理方法的原理示意图;
图3为根据本发明实施例的内容分发网络的预分发处理方法的再一原理示意图;
图4为根据本发明实施例的内容分发网络的预分发处理方法的又一原理示意图;
图5为根据本发明实施例的预分发处理失败的流程图;
图6为根据本发明实施例的内容分发网络的预分发处理方法的分层配置示意图;
图7为根据本发明实施例的内容分发网络的预分发处理装置的结构框图;
图8为根据本发明实施例的内容分发网络的预分发处理装置的又一结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
为了更好的理解以下实施例以及优选实施例的技术方案,下面对实施例中涉及到的名词解释其含义,但其并不对本发明实施例造成限定。
CDN:内容分发网络,通常通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
CDN服务商:提供CDN服务的供应商。
客户:Web内容供应商,使用统计服务和CDN服务的客户。
网民:Web内容的浏览者,使用互联网的大众。
CDN边缘服务器:CDN网络中最接近接近网民一端的内容服务器,负责Web内容的末端缓存,直接响应网民的网络请求并返回内容。
预分发:主动将热点内容预先推送分发到CDN的边缘服务器上,然后再公开地址给网民访问,以提高网民首次访问热点内容的访问质量。
智能流量调度系统:CDN的流量调度核心系统,根据访问者的IP地址,判断出最合适服务该访问者的CDN边缘节点,并且通过各种手段将访问者的请求调度到该CDN边缘节点上。
频道:客户使用CDN服务的每个域名称为一个频道。
Location:用于表达CDN服务区域的概念,按照“运营商编号-大区编号-省份编号”的方式来表述,每个location包含了所表达的地理位置和电信运营商所包含的IP地址段。
本发明实施例提供了一种内容分发网络的预分发处理方法,图1为根据本发明实施例的内容分发网络的预分发处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102:根据预定条件确定需要预分发的边缘服务器的列表,其中,上述预定条件包括以下至少之一:边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域;
步骤S104:向列表中的边缘服务器进行预分发。
通过上述步骤,采用根据边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域,上述条件之一确定需要预分发的边缘服务器的列表,并向上述确定的列表发送预分发网络内容的技术方案,解决了由于文件只能全网预分发导致的耗时较长以及全网预分发时,各CDN边缘节点会产生较大的回源带宽,导致客户源站带宽负载较高的问题,实现了由系统根据预定条件判断哪些边缘服务器需要进行预分发,以实现避免全网预分发、节省时间和带宽开销的同时,最大可能地达到预分发的目的效果。
服务状况可以通过多种方式来计算,例如,可以只考虑能够向网民提供多大的访问速度,也可以考虑向网民提供服务时的丢包率等指标。在一个可选的实施方式中,服务状况可以包括:该边缘服务器的回源速度和网民访问该边缘服务器的速度,根据边缘服务器上报的该边缘服务器的服务状况确定列表包括:将回源速度小于或者等于网民访问该边缘服务器的速度所对应的边缘服务器添加到列表中,其中,回源速度为边缘服务器从源站获取需要预分发内容的速度,在该实施例中,综合考虑各个边缘服务器的服务能力,智能选取需要预分发的边缘服务器,实现按需预分发,减少预分发任务的耗时,节省带宽。
为了使得上述过程更加精确,在另一个可选的实施例中,在确定上述列表之前,执行以下过程:根据边缘服务器的日志按照预定时间间隔检测服务状况,并基于检测结果确定边缘服务器的回源速度和网民访问该边缘服务器的速度,继而再根据确定的回源速度和网民访问该边缘服务器的速度的大小关系确定哪些边缘服务器可以添加到列表中。
下面以一个示例来对上述的可选实施例进行说明。在该示例中,将回源速度小于或者等于网民访问该边缘服务器的速度所对应的边缘服务器添加到列表中是因为判断一台边缘服务器是否需要进行预分发的关键,在于判断该服务器的回源速度是否低于网民访问边缘服务器的访问速度,图2为根据本发明实施例的内容分发网络的预分发处理方法的原理示意图。
如图2所示,源站到边缘服务器的速度(即回源速度)小于或者等于边缘服务器到网民(即网民访问该边缘服务器的速度)时,需要进行预分发,而当源站到边缘服务器的速度(即回源速度)大于边缘服务器到网民(即网民访问该边缘服务器的速度)时,不需要进行预分发,CDN网络进行预分发的主要目的,是为了提高网民“首次访问”时的服务质量,由于Cache服务器的特性,当网民首次访问某个内容,而边缘服务器中还不存在这一内容的缓存的时候,边缘服务器需要实时从源站获取内容(一般称为“回源”);这时如果由于源站带宽压力过大,或者由于边缘服务器和源站之间的网络链路质量不好的时候,“回源”获取内容的速度小于网民从边缘服务器下载的速度的话,就会造成“首次访问”的网民的访问卡顿现象(如果不是“首次访问”,由于Cache服务器已经存在本地缓存,并不需要回源,就不会出现卡顿现象)。
可选地,可以根据以下至少之一计算边缘服务器的回源速度:执行预分发指令时的回源日志中的参数、用户访问未预分发的内容且在缓存中没有命中的需要回源的访问日志中的参数;至少根据用户访问缓存Cache已经命中内容的访问日志的参数计算网民访问该边缘服务器的速度。
下面结合具体的参数对本示例进行说明。
1、边缘服务器的自检
边缘服务器首先根据自身的日志,定时检查(时间间隔可以按需配置,例如每隔5分钟或者10分钟)自身的回源速度和网民访问速度情况。
回源速度V0的数据来源于2种:
(1)执行预分发指令时的回源日志;(2)网民访问没有预分发的内容,在Cache没有命中需要回源时的访问日志。
V0=(以上2种访问日志记录的总流量)/(以上2种访问日志记录的总响应时长)。
网民访问速度(即网民访问该边缘服务器的速度)V1的数据来源于:
(1)网民访问Cache已经命中的内容的访问日志。
V1=(Cache命中的访问日志记录的总流量)/(Cache命中的访问日志的总响应时长)。
在设定的时间间隔内,边缘服务器根据以上的访问日志计算V0和V1。并且计算出V0和V1的比值:R=V0/V1;
以上的R即为该边缘服务器的自检结果。
2、在边缘服务器进行自检之后,向预分发中央系统汇报结果
边缘服务器在计算出自检结果R之后,就将该结果汇报至预分发中央系统。预分发中央系统会在数据库中记录下每一台边缘服务器的自检结果的R值,以供后续判断哪些边缘服务器需要进行预分发。
3、预分发中央系统根据自检结果判断需要预分发的设备
预分发中央系统在收到客户“自动预分发”的任务时,会调取预分发内容所属的频道下的所有边缘服务器的R值,并且将R值低于“速度比下限”的边缘服务器加入到“预分发设备列表”,“速度比下限”的可以由CDN管理人员根据情况在预加载中央系统设定:其取值越大,则越多设备需要进行预分发;取值越小,则越少设备需要进行预分发。一般而言,为了达到更好预分发的效果,“速度比下限”不应该小于1(例如可以取为1.05)。
综上所述,通过本示例提供的“智能预分发”模式,可以根据各台边缘服务器的链路状态,自动判断应该对哪些边缘服务器进行内容预分发。实现按需预分发,减少预分发任务的耗时,节省带宽。
在上述可选实施例中预定条件包括了边缘服务器上报的该边缘服务器的服务状况,在另一个可选实施例中,预定条件可以包括:内容供应商(即客户)指定的预分发区域,在该可选实施例中,客户向CDN服务商提交预分发任务时,可以指定只对热点地区、和/或运营商的CDN边缘节点进行预分发;CDN服务商收到这种任务时,可以根据客户该频道的流量调度策略,计算出需要进行预分发的CDN边缘节点,然后只对覆盖了这些地区的有关CDN边缘节点进行预分发,而无需对全网的所有CDN边缘节点进行预分发;这样比全网预分发的带宽需求更低,而且预分发任务能更快完成。
但是,由于该方案的预分发区域是由客户自行手工指定的,客户凭经验手动指定部分节点进行预分发时,因此预分发所覆盖的边缘服务器并不一定是真正最有需要进行预分发的服务器;如果客户指定进行预分发的区域内的边缘服务器的回源速度较快,就没有必要进行预分发;反之,如果客户没有进行预分发的区域内的边缘服务器回源速度较慢,则实际需要预分发的服务器反而没有进行预分发,因此,手动指定预分发区域,并不能真正对有需要的边缘服务器进行预分发。有可能起不到预分发的效果。因此,对于客户指定的预分发区域也可以和边缘服务器上报的该边缘服务器的服务状况综合考虑确定需要预分发的边缘服务器的列表。
另外,在本实施例中,提供了一种可选的内容执行商指定的预分发区域的构建底层位置location方法,可选地,根据内容执行商指定的预分发区域构建对应的底层位置location,其中,构建的底层location的格式为运营商编号-大区编号-省份编号,省份编号对应的省份所属的地理区域为除大区编号对应的地理区域外的其他地理区域,其中,根据内容供应商指定的预分发区域确定列表包括:获取所述底层location所对应的流量调度策略,并根据流量调度策略和构建的底层location逐级向上匹配确定列表。
在具体实施过程中,在上述可选实例中除了有由系统自动判断哪些边缘服务器需要进行预分发的“智能预分发”模式,也允许客户只针对热点区域(地理区域)、运营商进行部分预分发,以保证客户的重点服务区域的服务器质量;
在本实施例中,智能调度的CDN网络的边缘服务器所在的区域与服务区域并不一定一一对应:在异地的边缘服务器与网民之间的链路状况良好的情况下,智能调度的CDN网络可以使用异地的CDN边缘服务器来服务本地网民(例如:在江西和上海之间的链路状况良好的情况下,可以使用江西的边缘服务器服务上海的网民,以进一步加强上海的服务能力)。因此,如果希望保证某个地区的网民首次服务质量时,还需要进一步考虑跨区服务的情况。
如果客户选择了分区局部预分发,为了将跨区服务的情况考虑在内,还提供了一个可选实施例,根据CDN的智能流量调度逻辑,执行以下步骤计算出需要执行预分发的CDN边缘服务器:
1、根据客户指定的区域,构建客户所指定的底层location:
一个底层Location的表述格式为:“运营商编号-大区编号-省份编号”;
图3为根据本发明实施例的内容分发网络的预分发处理方法的再一原理示意图,如图3所示,例如:山东电信,底层location表示为CHN-BJ-SD,其含义为“中国电信-北京大区-山东省”,预分发系统根据客户指定的区域(省份、运营商的组合),构建出所有的底层location。
例如:“山东省”区域包含的底层location(假设只有CHN、UNI两家运营商):CHN-BJ-SD、UNI-BJ-SD;“山东省+江西省”包含的底层location(假设只有CHN、UNI两家运营商):CHN-BJ-SD、UNI-BJ-SD、CHN-SH-JX、UNI-SH-JX,其中,UNI为中国联通的简称,SH为上海的简称,JX为江西的简称。
2、预分发系统从智能流量调度系统获取该频道的流量调度策略。在频道的流量调度策略中,根据客户指定的底层location逐级向上匹配,找出需要执行预分发的CDN边缘服务器IP,形成“预分发设备列表”:
图4为根据本发明实施例的内容分发网络的预分发处理方法的又一原理示意图,如图4所示,假设客户指定的区域为“山东电信”,根据其对应的底层location“CHN-BJ-SD”,查出对应的CDN边缘服务器IP:3.3.3.3、4.4.4.4;然后查询其上一级location“CHN-BJ”,查出对应的CDN边缘服务器IP:1.1.1.1、2.2.2.2;然后再查询其父级location“CHN”,查出对应的CDN边缘服务器IP:1.1.1.1;再查询其父级location“default(默认网关)”,查出对应的CDN边缘服务器IP:5.5.5.5;
最后合并之后,“山东电信”涉及的“预分发设备列表”为:1.1.1.1、2.2.2.2、3.3.3.3、4.4.4.4、5.5.5.5。
通过以上步骤计算出的“预分发设备列表”,可以确保100%覆盖客户指定区域的所有边缘服务器,而不会有遗漏。
因此,上述可选实施例能够根据频道的流量调度策略,对客户自行制定的局部的边缘服务器进行预分发;客户可以只对重点热点区域进行预分发,缩短客户等待任务结束的时间,更快地发布内容;同时不会遗漏任何跨区服务的边缘服务器。
在实际应用过程中,由于设备故障、网络故障等问题,无可避免会出现部分边缘服务器执行预分发指令失败的状况(包括网络超时等),而客户向CDN服务商提交预分发任务时,需要等待所有CDN边缘服务器的预分发任务都顺利完成时,才会收到任务成功的通知。如果其中少部分CDN边缘服务器的预分发首次执行失败,则客户需要等待这些失败的CDN边缘服务器的预分发任务重试一直到成功,才能继续发布内容,否则客户无法确保热点内容的首次访问质量。
而采用这样的技术方案,部分CDN边缘服务器的预分发失败会影响整个预分发任务的状态,可能导致一个预分发任务一直无法结束;如果忽略少数节点预分发失败的情况,当网民的请求被调度到这些预分发失败的服务器上服务时,由于这些服务器没有本地缓存,需要马上回源抓取内容并提供给网民,会降低访问速度。
另外,还本实施例中,还提供了一种对预分发处理失败的处理过程:
当列表中的边缘服务器执行预分发失败时,根据边缘服务器所处的底层位置location中的其他边缘服务器的执行情况对边缘服务器进行处理。
可选地,当边缘服务器所处的底层location中的其他边缘服务器存在执行预分发成功的边缘服务器时,则将执行预分发失败的边缘服务器退出当前预分发任务,并进入后台重试队列;同时,所述执行预分发失败的边缘服务器将会挂起,不再参加服务,待重试成功后再重新投入服务;所述的执行预分发失败的边缘服务器由于不参加服务,如果没有其他预分发失败的location的话,可以向客户汇报预分发成功,不妨碍客户正常发布内容;
当边缘服务器所处的位置location仅存在执行预分发失败的边缘服务器或location中的其他边缘服务器均执行预分发失败时,则向内容供应商反馈预分发执行失败。
图5为根据本发明实施例的预分发处理失败的流程图,如图5所示:
当有部分服务器执行预分发失败时,预分发中央系统会判断该失败服务器所处的location中(一台服务器有可能处于多个location中),是否有其他服务器执行成功。如果有其他服务器是成功的,则将失败的服务器挂起(挂起的设备不会再收到智能流量调度系统分配的流量,实际上退出CDN服务),并且将该失败的服务器加入重试队列,以进行后续的后台重试动作;同时,由于失败的服务器不会再参与服务,因此不影响客户的服务质量,系统会向客户汇报预分发任务成功;如果失败的服务器是其所在location中的唯一一台服务器,或者该location没有任何服务器执行成功,该预分发任务才会向客户反馈失败。
上述可选实施例提供的上述技术方案能根据具体的流量调度策略,智能判断失败设备是否影响正常服务,并且在不影响正常服务的情况下尽快返回状态给客户,避免耽误客户的正常内容发布工作。
在执行预分发任务时,由于大量CDN边缘服务器会同时从源站拉取内容,因此会产生很大的回源流量。因此进行预分发时,可以通过增加“上层服务器”来解决这个问题,即将上层缓存设备也加入到“预分发设备列表”,图6为根据本发明实施例的内容分发网络的预分发处理方法的分层配置示意图,如图6所示。
上述列表中还包括:边缘服务器的上层服务器,其中上层服务器用于将从源站接收到的需要预分发的网络内容发送给边缘服务器。
执行预分发任务时,预分发指令会从预分发中央系统直接下发到“预分发设备列表”中的所有服务器。其中,下层服务器接到预分发指令时,会从上层服务器拉取内容;而上层服务器会从源站拉取内容。即使上层服务器没有完全取得所有数据,上层服务器也会自动将已经从源站获得的部分数据返回给下层服务器。下层服务器无需等待上层服务器取得所有数据才能开始拉取内容。
在本实施例中还提供了一种内容分发网络的预分发处理装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述,下面对该装置中涉及到的模块进行说明。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图7为根据本发明实施例的内容分发网络的预分发处理装置的结构框图。如图7所示,该装置包括:
确定模块70,用于根据预定条件确定需要预分发的边缘服务器的列表,其中,预定条件包括以下至少之一:边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域;
预分发模块72,连接至确定模块70,用于向列表中的边缘服务器进行预分发。
可选地,确定模块70,用于在服务状况包括:该边缘服务器的回源速度和网民访问该边缘服务器的速度时包括添加模块,添加模块用于将回源速度小于或者等于网民访问该边缘服务器的速度所对应的边缘服务器添加到列表中,其中,回源速度为边缘服务器从源站获取需要预分发的内容的速度。
图8为根据本发明实施例的内容分发网络的预分发处理装置的又一结构框图,如图8所示,上述内容分发网络的预分发处理装置还包括:
构建模块74,连接至确定模块70,用于根据内容执行商指定的预分发区域构建对应的底层位置location,其中,构建的底层location的格式为运营商编号-大区编号-省份编号,省份编号对应的省份所属的地理区域为除大区编号对应的地理区域外的其他地理区域。
如图8所示,上述内容分发网络的预分发处理装置还包括:
处理模块76,连接至预分发模块72,用于当列表中的边缘服务器执行预分发失败时,根据边缘服务器所处的底层位置location中的其他边缘服务器的执行情况对边缘服务器进行处理。
通过上述各个模块的作用,采用确定模块70根据边缘服务器上报的该边缘服务器的服务状况、内容供应商指定的预分发区域,上述条件之一确定需要预分发的边缘服务器的列表,预分发模块72向上述确定的列表发送预分发网络内容的技术方案,解决了相关技术中,尚无有效的技术方案实现根据边缘服务器的当前服务状况有针对性地分区域进行预分发的问题,实现了由系统根据每个边缘节点的不同情况,自动判断哪些边缘服务器需要进行预分发,以实现避免全网预分发、节省时间和带宽开销的同时,最大可能地达到预分发的目的效果。
综上所述,本发明实施例实现了以下有益效果:解决了相关技术中,尚无有效的技术方案实现根据边缘服务器的当前服务状况有针对性地分区域进行预分发的问题,实现了根据预定条件判断哪些边缘服务器需要进行预分发,以实现避免全网预分发、节省时间和带宽开销的同时,最大可能地达到预分发的目的效果。
在另外一个实施例中,还提供了一种软件,该软件用于执行上述实施例及优选实施方式中描述的技术方案。
在另外一个实施例中,还提供了一种存储介质,该存储介质中存储有上述软件,该存储介质包括但不限于:光盘、软盘、硬盘、可擦写存储器等。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种内容分发网络的预分发处理方法,其特征在于,包括:
根据预定条件确定需要预分发的边缘服务器的列表,其中,所述预定条件包括以下之一:边缘服务器上报的该边缘服务器的服务状况、边缘服务器上报的该边缘服务器的服务状况以及内容供应商指定的预分发区域;
向所述列表中的边缘服务器进行预分发,
其中,所述服务状况包括:该边缘服务器的回源速度和网民访问该边缘服务器的速度,根据边缘服务器上报的该边缘服务器的服务状况确定所述列表包括:
将所述回源速度小于或者等于所述网民访问该边缘服务器的速度所对应的边缘服务器添加到所述列表中,其中,所述回源速度为边缘服务器从源站获取需要预分发内容的速度,
其中,所述方法还包括:
根据所述内容执行商指定的预分发区域构建对应的底层位置location,其中,所述构建的底层location的格式为运营商编号-大区编号-省份编号,所述省份编号对应的省份所属的地理区域为除所述大区编号对应的地理区域外的其他地理区域。
2.根据权利要求1所述的方法,其特征在于,根据边缘服务器上报的该边缘服务器的服务状况确定所述列表之前还包括:
根据所述边缘服务器的日志按照预定时间间隔检测所述服务状况,并基于检测结果确定所述边缘服务器的所述回源速度和所述网民访问该边缘服务器的速度。
3.根据权利要求2所述的方法,其特征在于,根据以下至少之一参数计算所述边缘服务器的回源速度:
执行预分发指令时的回源日志中的参数、用户访问未预分发的内容且在缓存中没有命中的需要回源的访问日志中的参数。
4.根据权利要求2所述的方法,其特征在于,至少根据以下参数计算所述网民访问该边缘服务器的速度:用户访问缓存Cache已经命中内容的访问日志的参数。
5.根据权利要求1所述的方法,其特征在于,根据所述内容供应商指定的预分发区域确定所述列表包括:
获取所述底层location所对应的流量调度策略,并根据所述流量调度策略和所述构建的底层location逐级向上匹配确定所述列表。
6.根据权利要求1-5任一项所述的方法,其特征在于,还包括:
当所述列表中的边缘服务器执行预分发失败时,根据所述边缘服务器所处的底层位置location中的其他边缘服务器的执行情况对所述边缘服务器进行处理。
7.根据权利要求6所述的方法,其特征在于,根据所述边缘服务器所处的底层location中的其他边缘服务器的执行情况对所述边缘服务器进行处理包括:
当所述边缘服务器所处的底层location中的其他边缘服务器存在执行预分发成功的边缘服务器时,则将所述执行预分发失败的边缘服务器退出当前预分发任务设备列表,并将所述执行预分发失败的边缘服务器挂起,以及将所述执行预分发失败的边缘服务器进入后台重试队列;
当所述边缘服务器所处的位置location仅存在所述执行预分发失败的边缘服务器或所述location中的其他边缘服务器均执行预分发失败时,则向所述内容供应商反馈预分发执行失败。
8.一种内容分发网络的预分发处理装置,其特征在于,包括:
确定模块,用于根据预定条件确定需要预分发的边缘服务器的列表,其中,所述预定条件包括以下之一:边缘服务器上报的该边缘服务器的服务状况、边缘服务器上报的该边缘服务器的服务状况以及内容供应商指定的预分发区域;
预分发模块,用于向所述列表中的边缘服务器进行预分发,
其中,所述确定模块,用于在服务状况包括:该边缘服务器的回源速度和网民访问该边缘服务器的速度时包括添加模块,添加模块用于将回源速度小于或者等于网民访问该边缘服务器的速度所对应的边缘服务器添加到列表中,其中,回源速度为边缘服务器从源站获取需要预分发的内容的速度,
其中,所述预分发处理装置还包括:构建模块,连接至所述确定模块,用于根据内容执行商指定的预分发区域构建对应的底层位置location,其中,构建的底层location的格式为运营商编号-大区编号-省份编号,省份编号对应的省份所属的地理区域为除大区编号对应的地理区域外的其他地理区域。
CN201510166748.3A 2014-12-18 2015-04-09 内容分发网络的预分发处理方法及装置 Active CN104717231B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510166748.3A CN104717231B (zh) 2014-12-18 2015-04-09 内容分发网络的预分发处理方法及装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410798394X 2014-12-18
CN201410798394 2014-12-18
CN201510166748.3A CN104717231B (zh) 2014-12-18 2015-04-09 内容分发网络的预分发处理方法及装置

Publications (2)

Publication Number Publication Date
CN104717231A CN104717231A (zh) 2015-06-17
CN104717231B true CN104717231B (zh) 2019-01-25

Family

ID=53416192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510166748.3A Active CN104717231B (zh) 2014-12-18 2015-04-09 内容分发网络的预分发处理方法及装置

Country Status (1)

Country Link
CN (1) CN104717231B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106713506A (zh) * 2017-02-22 2017-05-24 郑州云海信息技术有限公司 一种数据获取方法及系统
CN110178356B (zh) * 2017-04-26 2020-07-28 华为技术有限公司 重定向的方法、控制面网元、聚合用户面网元和终端设备
CN107360272B (zh) * 2017-07-31 2020-04-03 赛尔网络有限公司 基于IPv6协议的流量入口的调度方法及装置
CN107911723B (zh) * 2017-11-20 2020-04-07 中央电视台 多网络路径分发视频流量的方法、服务器和分发设备
CN110139123A (zh) * 2018-02-02 2019-08-16 腾讯科技(深圳)有限公司 流媒体文件的播放、发送、处理方法和装置
CN110636092B (zh) * 2018-06-22 2022-05-10 中移(杭州)信息技术有限公司 一种内容访问系统、方法及内容服务器
CN109194984B (zh) * 2018-11-09 2021-02-12 中山大学 一种基于边缘计算的视频帧调度方法
CN109194772A (zh) * 2018-11-13 2019-01-11 杭州领智云画科技有限公司 Cdn边缘节点的回源方法和系统
CN112241413A (zh) * 2019-07-18 2021-01-19 腾讯科技(深圳)有限公司 一种预推内容管理方法、装置及计算机设备
EP3879796B1 (en) 2020-03-13 2024-02-21 Apple Inc. Selection of edge application server
CN111625743B (zh) * 2020-05-21 2023-05-23 广州华多网络科技有限公司 资源加载方法、装置及电子设备
CN113873302B (zh) * 2021-09-29 2024-04-26 北京金山云网络技术有限公司 内容分发方法、装置、存储介质和电子设备
CN114302181B (zh) * 2021-12-28 2022-11-29 中国科学院计算技术研究所 一种直播视频的内容预分发方法以及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102291447A (zh) * 2011-08-05 2011-12-21 中国电信股份有限公司 内容分发网络负载调度方法和系统
CN102572548A (zh) * 2011-01-04 2012-07-11 中兴通讯股份有限公司 内容分发方法及系统
CN103109511A (zh) * 2010-04-07 2013-05-15 杰出网络公司 内容分发网络中的部分对象分配

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103109511A (zh) * 2010-04-07 2013-05-15 杰出网络公司 内容分发网络中的部分对象分配
CN102572548A (zh) * 2011-01-04 2012-07-11 中兴通讯股份有限公司 内容分发方法及系统
CN102291447A (zh) * 2011-08-05 2011-12-21 中国电信股份有限公司 内容分发网络负载调度方法和系统

Also Published As

Publication number Publication date
CN104717231A (zh) 2015-06-17

Similar Documents

Publication Publication Date Title
CN104717231B (zh) 内容分发网络的预分发处理方法及装置
CN104834722B (zh) 基于cdn的内容管理系统
US10367764B2 (en) System and method for automated contact center agent workstation testing
CN103685583B (zh) 一种域名解析的方法和系统
CN101605030B (zh) 一种面向电视台应用的基于Active Directory的统一认证实现方法
CN104410691B (zh) 一种基于内容分发网络的网站加速方法及系统
US8938495B2 (en) Remote management system with adaptive session management mechanism
CN103596066B (zh) 一种数据处理方法及装置
CN109327550A (zh) 一种访问请求的分配方法、装置、存储介质和计算机设备
CN104320487A (zh) 内容分发网络的http调度系统和方法
CN106533935A (zh) 一种在云计算系统中获取业务链信息的方法和装置
CN102708173A (zh) 处理用户访问网页的请求的方法及系统
CN105068755B (zh) 一种面向云计算内容分发网络的数据副本存储方法
CN103051551A (zh) 一种分布式系统及其自动维护方法
CN107147817A (zh) 虚拟呼叫中心系统及其操作方法
CN108881509A (zh) 一种基于httpdns的dns查询方法及装置
CN109951566A (zh) 一种Nginx负载均衡方法、装置、设备及可读存储介质
CN109618003B (zh) 一种服务器规划方法、服务器及存储介质
CN108933840B (zh) 一种分布式代理方法及系统
CN107733995A (zh) 一种会话保持方法、装置和电子设备
CN104040538B (zh) 一种互联网应用交互方法、装置及系统
CN107634871B (zh) 一种连通性测试方法、装置及系统
CN105812465A (zh) 一种游戏服务器的负载均衡方法、装置及系统
CN109639502B (zh) 回源控制方法及内容分发网络
CN107566270A (zh) 一种资源访问的处理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20220225

Granted publication date: 20190125