CN104980416A - 一种内容分布网络中的数据访问方法、装置和系统 - Google Patents
一种内容分布网络中的数据访问方法、装置和系统 Download PDFInfo
- Publication number
- CN104980416A CN104980416A CN201410374801.4A CN201410374801A CN104980416A CN 104980416 A CN104980416 A CN 104980416A CN 201410374801 A CN201410374801 A CN 201410374801A CN 104980416 A CN104980416 A CN 104980416A
- Authority
- CN
- China
- Prior art keywords
- cdn node
- data
- ground floor
- access
- layer
- 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.)
- Pending
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种CDN中的数据访问方法、装置和系统,其中,该CDN包括第一层CDN节点和第二层CDN节点,该方法包括:第一层CDN节点接收终端发送的用户请求;当第一层CDN节点根据该用户请求确定本地存在需要访问的数据时,向终端返回该需要访问的数据;当第一层CDN节点根据该用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送所述用户请求,以获取该需要访问的数据并返回给终端。该方案不仅可以减少源数据中心的数据流量,提高用户请求的命中率,而且可以增强系统的容灾性。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种内容分布网络(CDN,ContentDistribution Network)中的数据访问方法、装置和系统。
背景技术
内容分发网络(CDN,Content Distribution Network),主要是通过在网络各处放置CDN节点,从而在现有的互联网基础之上构成一层智能虚拟网络,以便尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快和更稳定。CDN系统能够实时地根据网络流量和各CDN节点的连接、负载状况以及到用户的距离和响应时间等综合信息,将用户的请求重新导向离用户最近的CDN节点上,使用户可就近取得所需内容,提高用户访问网站的响应速度。其中,CDN节点一般为缓存服务器,也称作代理缓存,它位于网络的边缘,距用户仅有“一跳”之遥,同时,CDN节点也是内容提供商的源服务器的一个透明镜像。
在现有技术中,当终端访问CDN节点时,如果该CDN节点中缓存有要被访问的数据,则称为“命中”,此时CDN节点可以将该需要被访问的数据返回给终端,而如果该CDN节点中没有缓存有要被访问的数据,则表明没有命中,此时CDN节点需要将终端的访问请求发送给源数据服务器,从源数据服务器中获取要被访问的数据,并将该要被访问的数据返回给终端。
在对现有技术的研究和实践过程中,本发明的发明人发现,现有的CDN系统命中率并不高,所以CDN节点需要与源数据服务器频繁进行通信,导致源数据服务器负载增加,而且,该CDN系统的容灾性也较弱,大大影响了整个CDN系统的性能。
发明内容
本发明实施例提供一种CDN中的数据访问方法、装置和系统,可以减少CDN节点与源数据服务器之间的通信次数,降低源数据服务器负载,以及增强CDN系统的容灾性,提高CDN系统的性能。
本发明实施例提供一种CDN中的数据访问方法,所述CDN包括第一层CDN节点和第二层CDN节点,所述方法包括:
第一层CDN节点接收终端发送的用户请求,所述用户请求指示需要访问的数据;
当所述第一层CDN节点根据所述用户请求确定本地存在需要访问的数据时,所述第一层CDN节点向终端返回所述需要访问的数据;
当所述第一层CDN节点根据所述用户请求确定本地不存在需要访问的数据时,所述第一层CDN节点向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端。
本发明实施例还提供另一种CDN中的数据访问方法,其特征在于,所述CDN包括第一层CDN节点和第二层CDN节点,所述方法包括:
第二层CDN节点接收第一层CDN节点发送的用户请求,用户请求指示需要访问的数据,所述用户请求由第一层CDN节点再确定本地不存在所述需要访问的数据时发送;
当所述第二层CDN节点根据所述用户请求确定本地存在需要访问的数据时,所述第二层CDN节点向第一层CDN节点返回所述需要访问的数据;
当所述第二层CDN节点根据所述用户请求确定本地不存在需要访问的数据时,所述第二层CDN节点根据所述用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给所述第一层CDN节点。
相应的,本发明实施例还提供一种CDN节点,作为CDN的第一层CDN节点,包括:
接收单元,用于接收终端发送的用户请求,所述用户请求指示需要访问的数据;
第一发送单元,用于在根据所述用户请求确定本地存在需要访问的数据时,向终端返回所述需要访问的数据;
第二发送单元,用于在根据所述用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端。
相应的,本发明实施例还提供一种CDN节点,作为CDN的第二层CDN节点,包括:
接收单元,用于接收第一层CDN节点发送的用户请求,用户请求指示需要访问的数据,所述用户请求由第一层CDN节点再确定本地不存在所述需要访问的数据时发送;
第一发送单元,用于在根据所述用户请求确定本地存在需要访问的数据时,向所述第一层CDN节点返回所述需要访问的数据;
第二发送单元,用于在根据所述用户请求确定本地不存在需要访问的数据时,根据所述用户请求从源数据服务器中获取需要访问的数据,并将获取到的需要访问的数据发送给所述第一层CDN节点。
此外,本发明实施例还提供一种CDN系统,其特征在于,包括本发明实施例提供的任一种第一层CDN节点和第二层CDN节点。
本发明实施例的CDN可以包括第一层CDN节点和第二层CDN节点,其中,当用户请求在第一层CDN节点中无法命中时,第一层CDN节点并不直接将该用户请求发送给源数据中心,而是转发给第二层CDN节点,在第二层CDN节点也无法命中时,才将该用户请求发送给源数据中心以获取需要访问的数据,可见,在该方案中,可以大大减少源数据中心的数据流量,由于源数据中心的流量成本是CDN节点的多倍,因此,可以大大降低成本,而且,由于相对于现有方案而言,增加了第二层CDN节点,因此,可以在提高用户请求的命中率的同时,增加CDN节点的回源选择,从而大大增强了系统的容灾性,减少运维成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的CDN中的数据访问方法的流程图;
图2是本发明实施例提供的CDN中的数据访问方法的另一流程图;
图3a是本发明实施例提供的CDN系统的场景示意图
图3b是本发明实施例提供的CDN中的数据访问方法的又一流程图;
图4是本发明实施例提供CDN中的数据访问方法的又一流程图;
图5是本发明实施例提供的CDN节点的结构示意图;
图6是本发明实施例提供的CDN节点的另一结构示意图;
图7是本发明实施例提供的CDN节点的又一结构示意图;
图8是本发明实施例提供的方案与现有单CDN方案的成本对比示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种CDN中的数据访问方法、装置和系统。以下分别进行详细说明。
在本发明实施例中,CDN网络可以包括两层CND节点,其中,第一层部署机器数量少但地域分布广泛的CDN节点,方便用户的接入,为了描述方便,在本发明实施例中,将这一层CDN节点称为第一层CDN节点;第二层部署机器数量多的CDN节点,这一层的CDN节点可以处理第一层CDN节点的回源请求,即除了第一层CDN节点转发过来的用户请求,为了描述方便,在本发明实施例中,将这一层CDN节点称为第二层CDN节点,其中,第一层CDN节点和第二层CDN节点均可以支持数据对用户的直出,即均可以直接接收终端发送的用户请求,并直接提供用户所需要访问的数据给终端。
基于该CDN结构,以下将进行详细说明。
实施例一、
本实施例将从第一层CDN节点的角度进行描述。
一种CDN中的数据访问方法,包括:第一层CDN节点接收终端发送的用户请求,其中,该用户请求指示需要访问的数据;当该第一层CDN节点根据该用户请求确定本地存在需要访问的数据时,向终端返回该需要访问的数据;当该第一层CDN节点根据该用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送该用户请求,以获取该需要访问的数据并返回给终端。
如图1所示,具体流程可以如下:
101、第一层CDN节点接收终端发送的用户请求,其中,该用户请求指示需要访问的数据。
102、该第一层CDN节点根据该用户请求确定本地是否存在需要访问的数据,若存在,则执行步骤103,若不存在,则执行步骤104。
即该第一层CDN节点确定该用户请求是否可以命中,若可以,则执行步骤103,若不可以,则执行步骤104。
103、当该第一层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第一层CDN节点向终端返回该需要访问的数据。
例如,该第一层CDN节点可以根据该用户请求从本地获取该需要访问的数据,然后将该需要访问的数据发送给相应的终端。
104、当该第一层CDN节点根据该用户请求确定本地不存在需要访问的数据时,该第一层CDN节点向第二层CDN节点发送该用户请求,以获取该需要访问的数据并返回给终端。例如,具体可以如下:
第一层CDN节点向第二层CDN节点发送该用户请求,接收第二层CDN节点根据该用户请求返回的用户所需要访问的数据,将该需要访问的数据发送给终端。
其中,第二层CDN节点在获取该需要访问的数据时,可以先确定本地是否存在相应的数据,如果存在,则直接从本地获取该需要访问的数据,并提供给第一层CDN节点,否则,若不存在,则将用户请求发送给源数据中心,从源数据中心获取该需要访问的数据,并提供给第一层CDN节点,关于这一点,实施例二中将会进行详细说明,在此不再赘述。
可选的,为了提高系统的容灾性,可以为第一层CDN节点提供多种回源选择,例如,第一层CDN节点除了可以回源到第二层CDN节点上之外,也可以直接回源到源数据中心,比如,可以设置当“从第一层CDN节点到第二层CDN节点的回源失败率”小于预置阈值时,第一层CDN节点回源到第二层CDN节点,而如果“从第一层CDN节点到第二层CDN节点的回源失败率”大于等于预置阈值,则第一层CDN节点可以直接回源到源数据中心;即,在步骤“第一层CDN节点向第二层CDN节点发送所述用户请求”之前,该CDN中的数据访问方法还可以包括:
第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率小于预置阈值。
反之,如果第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值,则可以向源数据中心发送该用户请求,以获取该需要访问的数据,并将获取到的数据返回给终端。
其中,该预置阈值可以根据实际应用的需求进行设置,而“从第一层CDN节点到第二层CDN节点的回源失败率”和“从第一层CDN节点到源数据中心的回源失败率”可以由控制中心进行统计,并提供给第一层CDN节点。,在此不再赘述。
需说明的是,当第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值时,除了可以直接回源到源数据中心之外,为了提高其命中率,此时还可以作进一步判断,比如,可以将“从第一层CDN节点到第二层CDN节点的回源失败率”和“从第一层CDN节点到源数据中心的回源失败率”进行比较,如果“从第一层CDN节点到第二层CDN节点的回源失败率”大于“从第一层CDN节点到源数据中心的回源失败率”,则表明直接回源到源数据中心优于回源到第二层CDN节点,因此,此时可以选择直接回源到源数据中心,否则,则表明回源到第二层CDN节点优于直接回源到源数据中心,因此,此时依旧可以选择回源到第二层CDN节点;即,该CDN中的数据访问方法还可以包括:
若第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值,则还可以进一步确定从第一层CDN节点到第二层CDN节点的回源失败率是否大于从第一层CDN节点到源数据中心的回源失败率;若是,则第一层CDN节点向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端;若否,则第一层CDN节点向源数据中心发送该用户请求,以获取该需要访问的数据并返回给终端。
此外,为了提高用户请求的命中率,第一层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,可以将该需要访问的数据保存在与该第一层CDN节点连接的固态硬盘(SSD,Solid StateDisk)中,等等。
由上可知,本实施例的CDN可以包括第一层CDN节点和第二层CDN节点,其中,当用户请求在第一层CDN节点中无法命中时,第一层CDN节点并不直接将该用户请求发送给源数据中心,而是转发给第二层CDN节点,在第二层CDN节点也无法命中时,才将该用户请求发送给源数据中心以获取需要访问的数据,可见,在该方案中,可以大大减少源数据中心的数据流量,由于源数据中心的流量成本是CDN节点的多倍,因此,可以大大降低成本,而且,由于相对于现有方案而言,增加了第二层CDN节点,因此,可以在提高用户请求的命中率的同时,增加CDN节点的回源选择,从而大大增强了系统的容灾性,减少运维成本。
实施例二、
本实施例将从第二层CDN节点的角度进行描述。
一种内容分布网络CDN中的数据访问方法,包括:第二层CDN节点接收第一层CDN节点发送的用户请求,该用户请求指示需要访问的数据,其中,该用户请求由第一层CDN节点再确定本地不存在所述需要访问的数据时发送;当第二层CDN节点根据该用户请求确定本地存在需要访问的数据时,向第一层CDN节点返回该需要访问的数据;当第二层CDN节点根据该用户请求确定本地不存在需要访问的数据时,根据该用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给所述第一层CDN节点。
如图2所示,具体流程可以如下:
201、第二层CDN节点接收第一层CDN节点发送的用户请求,其中,该用户请求指示需要访问的数据。
该用户请求由第一层CDN节点再确定本地不存在所述需要访问的数据时发送,具体可参见实施例一,在此不再赘述。
202、该第二层CDN节点根据该用户请求确定本地是否存在需要访问的数据,若存在,则执行步骤203,若不存在,则执行步骤204。
即该第二层CDN节点确定该用户请求是否可以命中,若可以,则执行步骤203,若不可以,则执行步骤204。
203、当该第二层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第二层CDN节点向第一层CDN节点返回该需要访问的数据。
例如,该第一层CDN节点可以根据该用户请求从本地获取该需要访问的数据,然后将该需要访问的数据发送给相应的第一层CDN节点。
204、当该第二层CDN节点根据该用户请求确定本地不存在需要访问的数据时,该第二层CDN节点根据该用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给该第一层CDN节点。例如,具体可以如下:
第二层CDN节点向源数据中心发送该用户请求,接收源数据中心根据该用户请求返回的用户所需要访问的数据,将该需要访问的数据发送给该第一层CDN节点。
可选的,为了提高系统的容灾性,第二层CDN节点除了可以作为第一层CDN节点的回源点之外,也可以直接面向用户,即该数据访问方法还可以包括如下步骤:
第二层CDN节点接收终端发送的用户请求,其中,该用户请求指示需要访问的数据;当该第二层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第二层CDN节点向终端返回该需要访问的数据;当该第二层CDN节点根据该用户请求确定本地不存在需要访问的数据时,该第二层CDN节点根据该用户请求从源数据中心中获取需要访问的数据,并向终端返回该需要访问的数据。
此外,为了提高用户请求的命中率,第二层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,该第二层CDN节点将该需要访问的数据保存在与所述第二层CDN节点连接的SSD或串行高级技术附件(SATA,Serial Advanced Technology Attachment)硬盘中,比如,具体可以将热点数据存放在SSD硬盘中,而将冷数据存放在SATA硬盘中,等等。
由上可知,本实施例的CDN可以包括第一层CDN节点和第二层CDN节点,其中,当用户请求在第一层CDN节点中无法命中时,第一层CDN节点并不直接将该用户请求发送给源数据中心,而是转发给第二层CDN节点,在第二层CDN节点也无法命中时,才将该用户请求发送给源数据中心以获取需要访问的数据,可见,在该方案中,可以大大减少源数据中心的数据流量,由于源数据中心的流量成本是CDN节点的多倍,因此,可以大大降低成本,而且,由于相对于现有方案而言,增加了第二层CDN节点,因此,可以在提高用户请求的命中率的同时,增加CDN节点的回源选择,从而大大增强了系统的容灾性,减少运维成本。
实施例三、
根据实施例一和二所描述的方法,以下将举例作进一步详细说明。
如图3a所示,该CDN系统可以多个第一层CDN节点和多个第二层CDN节点,此外,还包括源数据中心,具体可以如下:
(1)第一层CDN节点;
第一层CDN节点,用于接收终端发送的用户请求,其中,该用户请求指示需要访问的数据,在根据该用户请求确定本地存在需要访问的数据时,向终端返回该需要访问的数据;在根据该用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送该用户请求,接收第二层CDN节点返回的需要访问的数据,将该需要访问的数据发送给终端。
(2)第二层CDN节点;
第二层CDN节点,用于接收第一层CDN节点发送的用户请求,在根据该用户请求确定本地存在需要访问的数据时,向第一层CDN节点返回该需要访问的数据;在确定本地不存在需要访问的数据时,根据该用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给第一层CDN节点。
(3)源数据中心;
源数据中心,用于接收第二层CDN节点发送的用户请求,根据所述用户请求获取需要访问的数据,将该需要访问的数据发送第二层CDN节点。
需说明的是,为了描述方便,在图3a中,只画出一个第一层CDN节点和一个第二层CDN节点,应当理解的是,第一层CDN节点和第二层CDN节点均可以有多个,其实现方式与此相同,在此不再赘述。
基于上述CDN系统结构,以下将举例进行详细说明。
如图3b所示,一种CDN中的数据访问方法,具体流程可以如下:
301、终端向第一层CDN节点发送用户请求,其中,该用户请求指示需要访问的数据。
302、第一层CDN节点接收终端发送的用户请求后,确定本地是否存在需要访问的数据,若存在,则执行步骤303,若不存在,则执行步骤304。
即该第一层CDN节点确定该用户请求是否可以命中,若可以,则执行步骤303,若不可以,则执行步骤304。
303、当该第一层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第一层CDN节点向终端返回该需要访问的数据。
例如,该第一层CDN节点可以根据该用户请求从本地获取该需要访问的数据,然后将该需要访问的数据发送给相应的终端。
304、当该第一层CDN节点根据该用户请求确定本地不存在需要访问的数据时,该第一层CDN节点向第二层CDN节点发送该用户请求。
305、第二层CDN节点接收第一层CDN节点发送的用户请求,根据该用户请求确定本地是否存在需要访问的数据,若存在,则执行步骤306,若不存在,则执行步骤307。
306、当该第二层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第二层CDN节点向第一层CDN节点返回该需要访问的数据。
例如,该第一层CDN节点可以根据该用户请求从本地获取该需要访问的数据,然后将该需要访问的数据发送给相应的第一层CDN节点,然后执行步骤308。
307、当该第二层CDN节点根据该用户请求确定本地不存在需要访问的数据时,该第二层CDN节点根据该用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给该第一层CDN节点,然后执行步骤308。
可选的,为了提高用户请求的命中率,第二层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,该第二层CDN节点将该需要访问的数据保存在与所述第二层CDN节点连接的SSD或SATA硬盘中,比如,具体可以将热点数据存放在SSD硬盘中,而将冷数据存放在SATA硬盘中,等等。
308、第一层CDN节点接收第二层CDN节点返回的用户所需要访问的数据,将该需要访问的数据发送给终端。
此外,为了提高用户请求的命中率,第一层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,可以将该需要访问的数据保存在与该第一层CDN节点连接的SSD中,等等。
由上可知,本实施例的CDN可以包括第一层CDN节点和第二层CDN节点,其中,当用户请求在第一层CDN节点中无法命中时,第一层CDN节点并不直接将该用户请求发送给源数据中心,而是转发给第二层CDN节点,在第二层CDN节点也无法命中时,才将该用户请求发送给源数据中心以获取需要访问的数据,可见,在该方案中,可以大大减少源数据中心的数据流量,由于源数据中心的流量成本是CDN节点的多倍,因此,可以大大降低成本,而且,由于相对于现有方案而言,增加了第二层CDN节点,因此,可以在提高用户请求的命中率的同时,增加CDN节点的回源选择,从而大大增强了系统的容灾性,减少运维成本。
实施例四、
可选的,为了提高系统的容灾性,可以为第一层CDN节点提供多种回源选择,例如,第一层CDN节点除了可以回源到第二层CDN节点上之外,也可以直接回源到源数据中心,本实施例将对此进行详细说明。
与实施例三不同的是,在本实施例中,第一层CDN节点除了可以执行实施例三所描述的操作之外,还具有如下功能:
第一层CDN节点,用于接收终端发送的用户请求,其中,该用户请求指示需要访问的数据,在根据该用户请求确定本地存在需要访问的数据时,向终端返回该需要访问的数据;在根据该用户请求确定本地不存在需要访问的数据时,确定从第一层CDN节点到第二层CDN节点的回源失败率是否小于预置阈值,若小于预置,则向第二层CDN节点发送该用户请求,接收第二层CDN节点返回的需要访问的数据,将该需要访问的数据发送给终端;若大于等于阈值,则第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率X是否大于从第一层CDN节点到源数据中心的回源失败率Y,若X大于Y,则第一层CDN节点向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端;若X小于等于Y,则第一层CDN节点向源数据中心发送该用户请求,以获取该需要访问的数据并返回给终端。
其中,该预置阈值可以根据实际应用的需求进行设置,而“从第一层CDN节点到第二层CDN节点的回源失败率”和“从第一层CDN节点到源数据中心的回源失败率”可以由控制中心进行统计,并提供给第一层CDN节点。在此不再赘述。
如图4所示,一种CDN中的数据访问方法,具体流程可以如下:
401、终端向第一层CDN节点发送用户请求,其中,该用户请求指示需要访问的数据。
402、第一层CDN节点接收终端发送的用户请求后,确定本地是否存在需要访问的数据,若存在,则执行步骤303,若不存在,则执行步骤304。
即该第一层CDN节点确定该用户请求是否可以命中,若可以,则执行步骤403,若不可以,则执行步骤404。
403、当该第一层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第一层CDN节点向终端返回该需要访问的数据。
例如,该第一层CDN节点可以根据该用户请求从本地获取该需要访问的数据,然后将该需要访问的数据发送给相应的终端。
404、当该第一层CDN节点根据该用户请求确定本地不存在需要访问的数据时,第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率是否小于预置阈值,若是,则执行步骤405,若否,则执行步骤410。
其中,阈值可以根据实际应用的需求进行设置,而“从第一层CDN节点到第二层CDN节点的回源失败率”可以由控制中心进行统计,并提供给第一层CDN节点,在此不再赘述。
405、第一层CDN节点向第二层CDN节点发送该用户请求,然后执行步骤406。
406、第二层CDN节点接收第一层CDN节点发送的用户请求,根据该用户请求确定本地是否存在需要访问的数据,若存在,则执行步骤407,若不存在,则执行步骤408。
407、当该第二层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第二层CDN节点向第一层CDN节点返回该需要访问的数据。
例如,该第一层CDN节点可以根据该用户请求从本地获取该需要访问的数据,然后将该需要访问的数据发送给相应的第一层CDN节点,然后执行步骤409。
408、当该第二层CDN节点根据该用户请求确定本地不存在需要访问的数据时,该第二层CDN节点根据该用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给该第一层CDN节点,然后执行步骤409。
可选的,为了提高用户请求的命中率,第二层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,该第二层CDN节点将该需要访问的数据保存在与所述第二层CDN节点连接的SSD或SATA硬盘中,比如,具体可以将热点数据存放在SSD硬盘中,而将冷数据存放在SATA硬盘中,等等。
409、第一层CDN节点接收第二层CDN节点返回的用户所需要访问的数据,将该需要访问的数据发送给终端,流程结束。
此外,为了提高用户请求的命中率,第一层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,可以将该需要访问的数据保存在与该第一层CDN节点连接的SSD中,等等。
410、第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率X是否大于从第一层CDN节点到源数据中心的回源失败率Y,若是,则执行步骤411,若否,则执行步骤405。
其中,“从第一层CDN节点到源数据中心的回源失败率”可以由控制中心进行统计,并提供给第一层CDN节点。
411、第一层CDN节点向源数据中心发送该用户请求,以获取该需要访问的数据,然后执行步骤409。
同理,为了提高用户请求的命中率,第一层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,可以将该需要访问的数据保存在与该第一层CDN节点连接的SSD中,等等。
由上可知,本实施例除了可以实现实施例三的有益效果之外,还可以在从第一层CDN节点到第二层CDN节点的回源失败率较高的情况下,直接选择其他的回源途径,比如直接回源至源数据中心,等等,因此,相对于实施例三而言,本实施例可以进一步提高系统的容灾性。
实施例五、
为了更好地实施以上方法,本发明实施例还可以提供一种CDN节点,作为本发明实施例所提供的CDN的第一层CDN节点,如图5所示,该CDN节点可以包括接收单元501、第一发送单元502和第二发送单元503,如下:
接收单元501,用于接收终端发送的用户请求,其中,用户请求指示需要访问的数据。
第一发送单元502,用于在根据该用户请求确定本地存在需要访问的数据时,向终端返回该需要访问的数据。
第二发送单元503,用于在根据该用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送该用户请求,以获取该需要访问的数据并返回给终端。
可选的,为了提高系统的容灾性,可以为第一层CDN节点提供多种回源选择,例如,第一层CDN节点除了可以回源到第二层CDN节点上之外,也可以直接回源到源数据中心,比如,可以设置当“从第一层CDN节点到第二层CDN节点的回源失败率”小于预置阈值时,第一层CDN节点回源到第二层CDN节点,而如果“从第一层CDN节点到第二层CDN节点的回源失败率”大于等于预置阈值,则第一层CDN节点可以直接回源到源数据中心;即:
第二发送单元503,具体可以用于在根据该用户请求确定本地不存在需要访问的数据,且确定从第一层CDN节点到第二层CDN节点的回源失败率小于预置阈值时,向第二层CDN节点发送该用户请求,以获取所述需要访问的数据并返回给终端。
反之,如果第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值,则可以向源数据中心发送该用户请求,以获取该需要访问的数据,并将获取到的数据返回给终端。
其中,该预置阈值可以根据实际应用的需求进行设置,而“从第一层CDN节点到第二层CDN节点的回源失败率”和“从第一层CDN节点到源数据中心的回源失败率”可以由控制中心进行统计,并提供给第一层CDN节点。,在此不再赘述。
需说明的是,当第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值时,除了可以直接回源到源数据中心之外,为了提高其命中率,此时还可以作进一步判断,比如,可以将“从第一层CDN节点到第二层CDN节点的回源失败率”和“从第一层CDN节点到源数据中心的回源失败率”进行比较,如果“从第一层CDN节点到第二层CDN节点的回源失败率”大于“从第一层CDN节点到源数据中心的回源失败率”,则表明直接回源到源数据中心优于回源到第二层CDN节点,因此,此时可以选择直接回源到源数据中心,否则,则表明回源到第二层CDN节点优于直接回源到源数据中心,因此,此时依旧可以选择回源到第二层CDN节点;即该CDN节点还可以包括判断单元;
判断单元,可以用于在确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值时,确定从第一层CDN节点到第二层CDN节点的回源失败率是否大于从第一层CDN节点到源数据中心的回源失败率;
则此时,第一发送单元501,还用于在判断单元确定从第一层CDN节点到第二层CDN节点的回源失败率大于从第一层CDN节点到源数据中心的回源失败率时,向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端;
第二发送单元503,还可以用于在判断单元确定从第一层CDN节点到第二层CDN节点的回源失败率小于等于从第一层CDN节点到源数据中心的回源失败率时,向源数据中心发送该用户请求,以获取所述需要访问的数据并返回给终端。
此外,为了提高用户请求的命中率,第一层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用。即该CDN节点还可以包括保存单元;
保存单元,可以用于在获取到该需要访问的数据后,将该需要访问的数据保存在与所述第一层CDN节点连接的SSD中。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本实施例的CDN可以包括第一层CDN节点和第二层CDN节点,其中,当第一层CDN节点的接收单元501接收到的用户请求在第一层CDN节点中无法命中时,第一层CDN节点并不直接将该用户请求发送给源数据中心,而是由第二发送单元503转发给第二层CDN节点,在第二层CDN节点也无法命中时,才将该用户请求发送给源数据中心以获取需要访问的数据,可见,在该方案中,可以大大减少源数据中心的数据流量,由于源数据中心的流量成本是CDN节点的多倍,因此,可以大大降低成本,而且,由于相对于现有方案而言,增加了第二层CDN节点,因此,可以在提高用户请求的命中率的同时,增加CDN节点的回源选择,从而大大增强了系统的容灾性,减少运维成本。
实施例六、
相应的,本发明实施例还提供另一种CDN节点,可以作为本发明实施例所提供的CDN的第二层CDN节点,如图6所示,该CDN节点可以包括接收单元601、第一发送单元602和第二发送单元603
接收单元601,用于接收第一层CDN节点发送的用户请求,用户请求指示需要访问的数据。
其中,该用户请求由第一层CDN节点再确定本地不存在所述需要访问的数据时发送,具体可参见前面的实施例,在此不再赘述。
第一发送单元602,用于在根据该用户请求确定本地存在需要访问的数据时,向第一层CDN节点返回该需要访问的数据;
例如,第一发送单元602具体可以可以根据该用户请求从本地获取该需要访问的数据,然后将该需要访问的数据发送给相应的第一层CDN节点。
第二发送单元603,用于在根据该用户请求确定本地不存在需要访问的数据时,根据该用户请求从源数据服务器中获取需要访问的数据,并将获取到的需要访问的数据发送给所述第一层CDN节点。
例如,第二发送单元603具体可以向源数据中心发送该用户请求,接收源数据中心根据该用户请求返回的用户所需要访问的数据,将该需要访问的数据发送给该第一层CDN节点。
可选的,为了提高系统的容灾性,第二层CDN节点除了可以作为第一层CDN节点的回源点之外,也可以直接面向用户,即:
接收单元601,还可以用于接收终端发送的用户请求,其中,该用户请求指示需要访问的数据。
第一发送单元602,还可以用于根据该用户请求确定本地存在需要访问的数据时,向终端返回所述需要访问的数据;
第二发送单元603,还可以用于根据该用户请求确定本地不存在需要访问的数据时,根据所述用户请求从源数据中心中获取需要访问的数据,并向终端返回该需要访问的数据。
此外,为了提高用户请求的命中率,第二层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用。即该CDN节点还可以包括保存单元,如下:
保存单元,用于在根据该用户请求从源数据中心中获取到需要访问的数据后,将该需要访问的数据保存在与第二层CDN节点连接的SSD或串SATA硬盘等存储设备中。
比如,具体可以将热点数据存放在SSD硬盘中,而将冷数据存放在SATA硬盘中,等等。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本实施例的CDN可以包括第一层CDN节点和第二层CDN节点,其中,当第用户请求在第一层CDN节点中无法命中时,第一层CDN节点并不直接将该用户请求发送给源数据中心,而是转发给第二层CDN节点,在第二层CDN节点也无法命中时,才将该用户请求发送给源数据中心以获取需要访问的数据,可见,在该方案中,可以大大减少源数据中心的数据流量,由于源数据中心的流量成本是CDN节点的多倍,因此,可以大大降低成本,而且,由于相对于现有方案而言,增加了第二层CDN节点,因此,可以在提高用户请求的命中率的同时,增加CDN节点的回源选择,从而大大增强了系统的容灾性,减少运维成本。
实施例七、
相应的,本发明实施例还提供一种CDN系统,包括实施例五所提供的任一种CDN节点(即第一层CDN节点)和实施例六所提供的任一种CDN节点(即第二层CDN节点),具体可参见实施例五和六,例如具体可以如下:
第一层CDN节点,用于接收终端发送的用户请求,其中,该用户请求指示需要访问的数据,在根据该用户请求确定本地存在需要访问的数据时,向终端返回该需要访问的数据;在根据该用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送该用户请求,接收第二层CDN节点返回的需要访问的数据,将该需要访问的数据发送给终端。
第二层CDN节点,用于接收第一层CDN节点发送的用户请求,在根据该用户请求确定本地存在需要访问的数据时,向第一层CDN节点返回该需要访问的数据;在确定本地不存在需要访问的数据时,根据该用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给第一层CDN节点。
该第一层CDN节点和第二层CDN节点具体可参见前面的实施例,在此不再赘述。
此外,该CDN系统还可以包括源数据中心,比如源数据服务器,具体可以如下:
源数据服务器,用于接收第二层CDN节点发送的用户请求,根据所述用户请求获取需要访问的数据,将该需要访问的数据发送第二层CDN节点。
以上各个设备的具体实施可参见前面的实施例,在此不再赘述。
由于该CDN系统可以包括本发明实施例提供的任一种第一层CDN节点和第二层CDN节点,因此,同样可以实现本发明实施例提供的任一种第一层CDN节点和第二层CDN节点的有益效果,详见前面实施例,在此不再赘述。
实施例八、
此外,本发明实施例还提供另一种CDN节点,可以作为本发明实施例的第二层CDN节点,如图7所示,其示出了本发明实施例所涉及的CDN节点的结构示意图,具体来讲:
该CDN节点可以包括一个或者一个以上处理核心的处理器701、一个或一个以上计算机可读存储介质的存储器702、射频(Radio Frequency,RF)电路703、电源704、输入单元705、以及显示单元706等部件。本领域技术人员可以理解,图7中示出的CDN节点结构并不构成对CDN节点的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器701是该CDN节点的控制中心,利用各种接口和线路连接整个CDN节点的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行CDN节点的各种功能和处理数据,从而对CDN节点进行整体监控。可选的,处理器701可包括一个或多个处理核心;优选的,处理器701可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器701中。
存储器702可用于存储软件程序以及模块,处理器701通过运行存储在存储器702的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据CDN节点的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器702还可以包括存储器控制器,以提供处理器701对存储器702的访问。
RF电路703可用于收发信息过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器701处理;另外,将涉及上行的数据发送给基站。通常,RF电路703包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路703还可以通过无线通信与网络和其他设备通信。
CDN节点还包括给各个部件供电的电源704(比如电池),优选的,电源可以通过电源管理系统与处理器701逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源704还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该CDN节点还可包括输入单元705,该输入单元705可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元705可包括触敏表面以及其他输入设备。
该CDN节点还可包括显示单元706,该显示单元708可用于显示由用户输入的信息或提供给用户的信息以及CDN节点的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
尽管未示出,CDN节点还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,CDN节点中的处理器701会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器702中,并由处理器701来运行存储在存储器702中的应用程序,从而实现各种功能,如下:
接收终端发送的用户请求,其中,该用户请求指示需要访问的数据,在根据该用户请求确定本地存在需要访问的数据时,向终端返回该需要访问的数据;在根据该用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送该用户请求,接收第二层CDN节点返回的需要访问的数据,将该需要访问的数据发送给终端。
可选的,为了提高系统的容灾性,可以为该CDN节点(即第一层CDN节点)提供多种回源选择,例如,除了可以回源到第二层CDN节点上之外,也可以直接回源到源数据中心,比如,可以设置当“从第一层CDN节点到第二层CDN节点的回源失败率”小于预置阈值时,第一层CDN节点回源到第二层CDN节点,而如果“从第一层CDN节点到第二层CDN节点的回源失败率”大于等于预置阈值,则第一层CDN节点可以直接回源到源数据中心;即,在步骤“第一层CDN节点向第二层CDN节点发送所述用户请求”之前,还执行如下操作:
确定从第一层CDN节点到第二层CDN节点的回源失败率小于预置阈值。
反之,如果第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值,则可以向源数据中心发送该用户请求,以获取该需要访问的数据,并将获取到的数据返回给终端。
其中,该预置阈值可以根据实际应用的需求进行设置,而“从第一层CDN节点到第二层CDN节点的回源失败率”和“从第一层CDN节点到源数据中心的回源失败率”可以由控制中心进行统计,并提供给第一层CDN节点。,在此不再赘述。
需说明的是,当确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值时,除了可以直接回源到源数据中心之外,为了提高其命中率,此时还可以作进一步判断,比如,可以将“从第一层CDN节点到第二层CDN节点的回源失败率”和“从第一层CDN节点到源数据中心的回源失败率”进行比较,如果“从第一层CDN节点到第二层CDN节点的回源失败率”大于“从第一层CDN节点到源数据中心的回源失败率”,则表明直接回源到源数据中心优于回源到第二层CDN节点,因此,此时可以选择直接回源到源数据中心,否则,则表明回源到第二层CDN节点优于直接回源到源数据中心,因此,此时依旧可以选择回源到第二层CDN节点;即,处理器701还可以执行如下操作:
若确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值,则还可以进一步确定从第一层CDN节点到第二层CDN节点的回源失败率是否大于从第一层CDN节点到源数据中心的回源失败率;若是,则向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端;若否,则向源数据中心发送该用户请求,以获取该需要访问的数据并返回给终端。
此外,为了提高用户请求的命中率,在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,可以将该需要访问的数据保存在与该第一层CDN节点连接的SSD中,等等。
该CDN节点同样可以实现其他实施例所能实现的有益效果,在此不再赘述。
实施例九、
此外,本发明实施例还提供另一种CDN节点,可以作为本发明实施例的第二层CDN节点,其结构与实施例八中的CDN节点结构相同,具体可参见图7,其中,该CDN节点中各个部分的结构和功能具体可参见实施例八,在此不再赘述,与实施例八不同的是,该CDN节点的处理器701在运行存储在存储器702中的应用程序时,其实现的各种功能有所不同,如下:
接收第一层CDN节点发送的用户请求,在根据该用户请求确定本地存在需要访问的数据时,向第一层CDN节点返回该需要访问的数据;在确定本地不存在需要访问的数据时,根据该用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给第一层CDN节点。
可选的,为了提高系统的容灾性,第二层CDN节点除了可以作为第一层CDN节点的回源点之外,也可以直接面向用户,即处理器701还可以执行如下操作:
接收终端发送的用户请求,其中,该用户请求指示需要访问的数据;当该第二层CDN节点根据该用户请求确定本地存在需要访问的数据时,该第二层CDN节点向终端返回该需要访问的数据;当该第二层CDN节点根据该用户请求确定本地不存在需要访问的数据时,该第二层CDN节点根据该用户请求从源数据中心中获取需要访问的数据,并向终端返回该需要访问的数据。
此外,为了提高用户请求的命中率,第二层CDN节点在获取到该需要访问的数据后,还可以缓存该数据,以供后续的用户请求使用,比如,该第二层CDN节点将该需要访问的数据保存在与所述第二层CDN节点连接的SSD或SATA硬盘中,比如,具体可以将热点数据存放在SSD硬盘中,而将冷数据存放在SATA硬盘中,等等。
该CDN节点同样可以实现其他实施例所能实现的有益效果,在此不再赘述。
此外,为了更好地说明本发明实施例的各个方案的有益效果,以下将分别对本发明实施例所提供的方案(即分析OC结构)和现有技术的单层CDN节点架构(即单层OC结构)的性能进行分析,以作比较,具体可以如下:
以微信相册为例,本发明所提供的CDN节点架构(也称为分级OC)中,第一层CDN节点的命中率在微信相册中是70%,第二层CDN节点的命中率是80%,假设CDN点的流量成本是X,数据中心的流量成本是Y,业务总流量(即数据总流量)是F,则单CDN架构方式和分级OC架构的成本Cost计算如下:
单CDN节点架构:Cost=0.7*F*X+0.3*F*Y;
分级OC架构:Cost=0.7*F*X+0.24*F*X+0.06*F*Y+M;
其中,分级OC架构中的“0.24”是通过30%回源请求会有80%在第二层CDN节点中命中计算得出,“0.06”是回源到数据中心的请求的占比,即“0.3-0.24=0.06”,而M则是增加第二层CDN节点投入的设备成本,可当成常数对待。Y是X的2倍,成本X也可以作为常数对待,应用此关系,整理后的成本计算公式可以如下:
单CDN节点架构:Cost=1.3*X*F;
分级OC架构:Cost=1.06*X*F+M;
根据上述算式进行数学作图,可以得到如图8所示的图例,由图8可知,当业务总流量F越高,单CDN节点的成本与分级OC的成本差距越大,由此可见,若采用本发明实施例所提供的方案,可以大大节省其成本。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种CDN中的数据访问方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (15)
1.一种内容分布网络CDN中的数据访问方法,其特征在于,所述CDN包括第一层CDN节点和第二层CDN节点,所述方法包括:
第一层CDN节点接收终端发送的用户请求,所述用户请求指示需要访问的数据;
当所述第一层CDN节点根据所述用户请求确定本地存在需要访问的数据时,所述第一层CDN节点向终端返回所述需要访问的数据;
当所述第一层CDN节点根据所述用户请求确定本地不存在需要访问的数据时,所述第一层CDN节点向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端。
2.根据权利要求1所述的方法,其特征在于,所述第一层CDN节点向第二层CDN节点发送所述用户请求之前,还包括:
所述第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率小于预置阈值。
3.根据权利要求2所述的方法,其特征在于,还包括:
所述第一层CDN节点确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值时,确定从第一层CDN节点到第二层CDN节点的回源失败率是否大于从第一层CDN节点到源数据中心的回源失败率;
若是,则所述第一层CDN节点向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端;
若否,则所述第一层CDN节点向源数据中心发送所述用户请求,以获取所述需要访问的数据并返回给终端。
4.根据权利要求1至3任一项所述的方法,其特征在于,第一层CDN节点获取所述需要访问的数据后,还包括:
所述第一层CDN节点将所述需要访问的数据保存在与所述第一层CDN节点连接的固态硬盘中。
5.一种内容分布网络CDN中的数据访问方法,其特征在于,所述CDN包括第一层CDN节点和第二层CDN节点,所述方法包括:
第二层CDN节点接收第一层CDN节点发送的用户请求,用户请求指示需要访问的数据,所述用户请求由第一层CDN节点再确定本地不存在所述需要访问的数据时发送;
当所述第二层CDN节点根据所述用户请求确定本地存在需要访问的数据时,所述第二层CDN节点向第一层CDN节点返回所述需要访问的数据;
当所述第二层CDN节点根据所述用户请求确定本地不存在需要访问的数据时,所述第二层CDN节点根据所述用户请求从源数据中心中获取需要访问的数据,并将获取到的需要访问的数据发送给所述第一层CDN节点。
6.根据权利要求5所述的方法,其特征在于,还包括:
所示第二层CDN节点接收终端发送的用户请求,所述用户请求指示需要访问的数据;
当所述第二层CDN节点根据所述用户请求确定本地存在需要访问的数据时,所述第二层CDN节点向终端返回所述需要访问的数据;
当所述第二层CDN节点根据所述用户请求确定本地不存在需要访问的数据时,所述第二层CDN节点根据所述用户请求从源数据中心中获取需要访问的数据,并向终端返回所述需要访问的数据。
7.根据权利要求5或6所述的方法,其特征在于,所述第二层CDN节点根据所述用户请求从源数据中心中获取需要访问的数据后,还包括:
所述第二层CDN节点将所述需要访问的数据保存在与所述第二层CDN节点连接的固态硬盘或串行高级技术附件SATA硬盘中。
8.一种内容分布网络CDN节点,其特征在于,作为CDN的第一层CDN节点,包括:
接收单元,用于接收终端发送的用户请求,所述用户请求指示需要访问的数据;
第一发送单元,用于在根据所述用户请求确定本地存在需要访问的数据时,向终端返回所述需要访问的数据;
第二发送单元,用于在根据所述用户请求确定本地不存在需要访问的数据时,向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端。
9.根据权利要求8所述的CDN节点,其特征在于,
所述第二发送单元,具体用于在根据所述用户请求确定本地不存在需要访问的数据,且确定从第一层CDN节点到第二层CDN节点的回源失败率小于预置阈值时,向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端。
10.根据权利要求9所述的CDN节点,其特征在于,还包括判断单元;
所述判断单元,用于在确定从第一层CDN节点到第二层CDN节点的回源失败率大于等于预置阈值时,确定从第一层CDN节点到第二层CDN节点的回源失败率是否大于从第一层CDN节点到源数据中心的回源失败率;
所述第一发送单元,还用于在所述判断单元确定从第一层CDN节点到第二层CDN节点的回源失败率大于从第一层CDN节点到源数据中心的回源失败率时,向第二层CDN节点发送所述用户请求,以获取所述需要访问的数据并返回给终端;
所述第二发送单元,还用于在所述判断单元确定从第一层CDN节点到第二层CDN节点的回源失败率小于等于从第一层CDN节点到源数据中心的回源失败率时,向源数据中心发送所述用户请求,以获取所述需要访问的数据并返回给终端。
11.根据权利要求9所述的CDN节点,其特征在于,还包括保存单元;
所述保存单元,用于在获取到所述需要访问的数据后,将所述需要访问的数据保存在与所述第一层CDN节点连接的固态硬盘中。
12.一种内容分布网络CDN节点,其特征在于,作为CDN的第二层CDN节点,包括:
接收单元,用于接收第一层CDN节点发送的用户请求,用户请求指示需要访问的数据,所述用户请求由第一层CDN节点再确定本地不存在所述需要访问的数据时发送;
第一发送单元,用于在根据所述用户请求确定本地存在需要访问的数据时,向所述第一层CDN节点返回所述需要访问的数据;
第二发送单元,用于在根据所述用户请求确定本地不存在需要访问的数据时,根据所述用户请求从源数据服务器中获取需要访问的数据,并将获取到的需要访问的数据发送给所述第一层CDN节点。
13.根据权利要求12所述的CDN节点,其特征在于,
所述接收单元,还用于接收终端发送的用户请求,所述用户请求指示需要访问的数据;
所述第一发送单元,还用于根据所述用户请求确定本地存在需要访问的数据时,向终端返回所述需要访问的数据;
所述第二发送单元,还用于根据所述用户请求确定本地不存在需要访问的数据时,根据所述用户请求从源数据中心中获取需要访问的数据,并向终端返回所述需要访问的数据。
14.根据权利要求12或13所述的CDN节点,其特征在于,还包括保存单元;
所述保存单元,用于在根据所述用户请求从源数据中心中获取到需要访问的数据后,将所述需要访问的数据保存在与所述第二层CDN节点连接的固态硬盘或串行高级技术附件SATA硬盘中。
15.一种内容分布网络CDN系统,其特征在于,包括权利要求8至11任一项所述的CDN节点和权利要求12至14任一项所述的CDN节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410374801.4A CN104980416A (zh) | 2014-07-31 | 2014-07-31 | 一种内容分布网络中的数据访问方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410374801.4A CN104980416A (zh) | 2014-07-31 | 2014-07-31 | 一种内容分布网络中的数据访问方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104980416A true CN104980416A (zh) | 2015-10-14 |
Family
ID=54276525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410374801.4A Pending CN104980416A (zh) | 2014-07-31 | 2014-07-31 | 一种内容分布网络中的数据访问方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104980416A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105847154A (zh) * | 2016-04-25 | 2016-08-10 | 乐视控股(北京)有限公司 | 一种路由选择方法及装置 |
CN106357783A (zh) * | 2016-09-29 | 2017-01-25 | 北京奇艺世纪科技有限公司 | 一种边缘节点分配方法及装置 |
CN106571982A (zh) * | 2016-11-17 | 2017-04-19 | 乐视控股(北京)有限公司 | 数据回源的方法、装置和内容分发网络系统 |
CN106888171A (zh) * | 2015-12-15 | 2017-06-23 | 中国移动通信集团公司 | 一种数据业务的处理方法及装置 |
CN107707519A (zh) * | 2017-07-10 | 2018-02-16 | 贵州白山云科技有限公司 | 一种流媒体传输方法、装置和系统 |
CN108199851A (zh) * | 2018-02-01 | 2018-06-22 | 北京华大智宝电子系统有限公司 | 一种数据安全传输方法、装置及系统 |
CN108306971A (zh) * | 2018-02-02 | 2018-07-20 | 网宿科技股份有限公司 | 一种发送数据资源的获取请求的方法和系统 |
WO2018153345A1 (zh) * | 2017-02-23 | 2018-08-30 | 华为技术有限公司 | 一种基于会话迁移的调度方法及服务器 |
WO2019148498A1 (en) * | 2018-02-05 | 2019-08-08 | Telefonaktiebolaget Lm Ericsson (Publ) | A method, a user equipment and a computer program product for enabling a dynamic adaptive streaming over http, dash, player to fetch media segments from a network |
CN110535948A (zh) * | 2019-08-30 | 2019-12-03 | 北京东软望海科技有限公司 | 数据的获取方法、装置、电子设备及计算机可读存储介质 |
CN110830531A (zh) * | 2018-08-09 | 2020-02-21 | 阿里巴巴集团控股有限公司 | 资源请求的处理方法和装置及存储系统,电子和存储设备 |
CN111107118A (zh) * | 2018-10-26 | 2020-05-05 | 北京金山云网络技术有限公司 | 一种图片访问加速方法、装置、设备、系统及存储介质 |
CN111770119A (zh) * | 2020-09-03 | 2020-10-13 | 云盾智慧安全科技有限公司 | 网站资源获取方法、系统、装置及计算机存储介质 |
CN112839070A (zh) * | 2019-11-22 | 2021-05-25 | 北京金山云网络技术有限公司 | 数据处理方法、装置和cdn网络中的节点设备 |
CN114338726A (zh) * | 2021-12-30 | 2022-04-12 | 江苏云工场信息技术有限公司 | 一种基于cdn节点的内容推送方法以及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1592248A (zh) * | 2003-08-29 | 2005-03-09 | 华为技术有限公司 | 一种分层的内容分发网络及内容分层分发的方法 |
CN1941736A (zh) * | 2005-09-30 | 2007-04-04 | 西门子通信技术(北京)有限公司 | 一种内容分发系统及其用户请求重定向方法 |
CN101222424A (zh) * | 2007-12-24 | 2008-07-16 | 中国电信股份有限公司 | 内容分发网络和该网络中基于内容的调度方法 |
CN101860720A (zh) * | 2009-04-10 | 2010-10-13 | 中兴通讯股份有限公司 | 内容定位方法及内容分发网络节点 |
CN103139301A (zh) * | 2013-02-05 | 2013-06-05 | 华南师范大学 | 应用于内容分发网络系统中的互联网访问加速方法及装置 |
-
2014
- 2014-07-31 CN CN201410374801.4A patent/CN104980416A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1592248A (zh) * | 2003-08-29 | 2005-03-09 | 华为技术有限公司 | 一种分层的内容分发网络及内容分层分发的方法 |
CN1941736A (zh) * | 2005-09-30 | 2007-04-04 | 西门子通信技术(北京)有限公司 | 一种内容分发系统及其用户请求重定向方法 |
CN101222424A (zh) * | 2007-12-24 | 2008-07-16 | 中国电信股份有限公司 | 内容分发网络和该网络中基于内容的调度方法 |
CN101860720A (zh) * | 2009-04-10 | 2010-10-13 | 中兴通讯股份有限公司 | 内容定位方法及内容分发网络节点 |
CN103139301A (zh) * | 2013-02-05 | 2013-06-05 | 华南师范大学 | 应用于内容分发网络系统中的互联网访问加速方法及装置 |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106888171A (zh) * | 2015-12-15 | 2017-06-23 | 中国移动通信集团公司 | 一种数据业务的处理方法及装置 |
CN106888171B (zh) * | 2015-12-15 | 2019-10-18 | 中国移动通信集团公司 | 一种数据业务的处理方法及装置 |
CN105847154A (zh) * | 2016-04-25 | 2016-08-10 | 乐视控股(北京)有限公司 | 一种路由选择方法及装置 |
CN106357783B (zh) * | 2016-09-29 | 2019-06-14 | 北京奇艺世纪科技有限公司 | 一种边缘节点分配方法及装置 |
CN106357783A (zh) * | 2016-09-29 | 2017-01-25 | 北京奇艺世纪科技有限公司 | 一种边缘节点分配方法及装置 |
CN106571982A (zh) * | 2016-11-17 | 2017-04-19 | 乐视控股(北京)有限公司 | 数据回源的方法、装置和内容分发网络系统 |
US11431765B2 (en) | 2017-02-23 | 2022-08-30 | Huawei Technologies Co., Ltd. | Session migration—based scheduling method and server |
WO2018153345A1 (zh) * | 2017-02-23 | 2018-08-30 | 华为技术有限公司 | 一种基于会话迁移的调度方法及服务器 |
CN107707519A (zh) * | 2017-07-10 | 2018-02-16 | 贵州白山云科技有限公司 | 一种流媒体传输方法、装置和系统 |
CN108199851A (zh) * | 2018-02-01 | 2018-06-22 | 北京华大智宝电子系统有限公司 | 一种数据安全传输方法、装置及系统 |
WO2019148568A1 (zh) * | 2018-02-02 | 2019-08-08 | 网宿科技股份有限公司 | 一种发送数据资源的获取请求的方法和系统 |
CN108306971B (zh) * | 2018-02-02 | 2020-06-23 | 网宿科技股份有限公司 | 一种发送数据资源的获取请求的方法和系统 |
CN108306971A (zh) * | 2018-02-02 | 2018-07-20 | 网宿科技股份有限公司 | 一种发送数据资源的获取请求的方法和系统 |
WO2019148498A1 (en) * | 2018-02-05 | 2019-08-08 | Telefonaktiebolaget Lm Ericsson (Publ) | A method, a user equipment and a computer program product for enabling a dynamic adaptive streaming over http, dash, player to fetch media segments from a network |
US11038941B2 (en) | 2018-02-05 | 2021-06-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Enabling a dynamic adaptive streaming over HTTP player to fetch media segments from a network |
US10601886B2 (en) | 2018-02-05 | 2020-03-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Method, a user equipment and a computer program product for enabling a dynamic adaptive streaming over HTTP, DASH, player to fetch media segments from a network |
CN110830531A (zh) * | 2018-08-09 | 2020-02-21 | 阿里巴巴集团控股有限公司 | 资源请求的处理方法和装置及存储系统,电子和存储设备 |
CN111107118A (zh) * | 2018-10-26 | 2020-05-05 | 北京金山云网络技术有限公司 | 一种图片访问加速方法、装置、设备、系统及存储介质 |
CN110535948A (zh) * | 2019-08-30 | 2019-12-03 | 北京东软望海科技有限公司 | 数据的获取方法、装置、电子设备及计算机可读存储介质 |
CN112839070A (zh) * | 2019-11-22 | 2021-05-25 | 北京金山云网络技术有限公司 | 数据处理方法、装置和cdn网络中的节点设备 |
CN112839070B (zh) * | 2019-11-22 | 2023-08-22 | 北京金山云网络技术有限公司 | 数据处理方法、装置和cdn网络中的节点设备 |
CN111770119B (zh) * | 2020-09-03 | 2020-11-27 | 云盾智慧安全科技有限公司 | 网站资源获取方法、系统、装置及计算机存储介质 |
CN111770119A (zh) * | 2020-09-03 | 2020-10-13 | 云盾智慧安全科技有限公司 | 网站资源获取方法、系统、装置及计算机存储介质 |
CN114338726A (zh) * | 2021-12-30 | 2022-04-12 | 江苏云工场信息技术有限公司 | 一种基于cdn节点的内容推送方法以及装置 |
CN114338726B (zh) * | 2021-12-30 | 2022-08-02 | 江苏云工场信息技术有限公司 | 一种基于cdn节点的内容推送方法以及装置 |
WO2023123532A1 (zh) * | 2021-12-30 | 2023-07-06 | 江苏云工场信息技术有限公司 | 一种基于cdn节点的内容推送方法以及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104980416A (zh) | 一种内容分布网络中的数据访问方法、装置和系统 | |
CN105824706B (zh) | 一种配置加速器的方法和装置 | |
KR102513998B1 (ko) | 통신 방법 및 장치, 엔티티 및 컴퓨터 판독가능 저장 매체 | |
CN104142862B (zh) | 服务器的过载保护方法及装置 | |
CN110049130A (zh) | 一种基于边缘计算的服务部署和任务调度方法及装置 | |
US11595473B2 (en) | Ad hoc decentralized cloud infrastructure | |
CN104780193A (zh) | 信息推送方法、装置和系统 | |
CN103475392B (zh) | 信息获取方法、装置和终端 | |
US20160070475A1 (en) | Memory Management Method, Apparatus, and System | |
CN104992342A (zh) | 推广信息投放有效性确定方法、监测服务器及终端 | |
CN109428839B (zh) | 一种cdn调度方法、设备及系统 | |
US9985893B2 (en) | Load sharing method and apparatus, and board | |
CN103491152A (zh) | 分布式文件系统中元数据获取方法、装置及系统 | |
CN104899672A (zh) | 物品转移装置、系统及方法 | |
CN104901991A (zh) | 虚拟资源转移方法、装置和系统 | |
CN106533973A (zh) | 分发业务消息的方法、设备和系统 | |
CN105472291A (zh) | 多处理器集群的数字硬盘录像机及其实现方法 | |
CN103220296B (zh) | 一种数据交互的方法、设备及系统 | |
US10285033B2 (en) | System and method for propagation of server information in a data center with master system election | |
CN104536782A (zh) | 引导内容展示方法、文件生成方法及装置 | |
CN114039798A (zh) | 一种数据传输方法、装置及电子设备 | |
CN103902472B (zh) | 基于内存芯片互连的内存访问处理方法、内存芯片及系统 | |
CN104463062B (zh) | 基于二维码扫描的访问方法和系统 | |
CN113726608B (zh) | 数据处理方法及装置 | |
CN104901903A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151014 |