CN107465707A - 一种内容分发网络的内容刷新方法及装置 - Google Patents

一种内容分发网络的内容刷新方法及装置 Download PDF

Info

Publication number
CN107465707A
CN107465707A CN201610390436.5A CN201610390436A CN107465707A CN 107465707 A CN107465707 A CN 107465707A CN 201610390436 A CN201610390436 A CN 201610390436A CN 107465707 A CN107465707 A CN 107465707A
Authority
CN
China
Prior art keywords
content
cdn
fileversion
file
static resource
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.)
Granted
Application number
CN201610390436.5A
Other languages
English (en)
Other versions
CN107465707B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610390436.5A priority Critical patent/CN107465707B/zh
Publication of CN107465707A publication Critical patent/CN107465707A/zh
Application granted granted Critical
Publication of CN107465707B publication Critical patent/CN107465707B/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/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种内容分发网络的内容刷新方法及装置,通过获取源站点应用服务器根据用户访问请求返回给用户的网页内容,解析网页内容中的静态资源链接,并根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号,然后以获取的文件版本号,拼装CDN访问地址,并在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容。本发明的装置包括静态资源链接解析模块、文件版本号获取模块和内容刷新模块。本发明的方法及装置提高了CDN内容的刷新效率,降低了管理成本。

Description

一种内容分发网络的内容刷新方法及装置
技术领域
本发明属于内容分发技术领域,尤其涉及一种内容分发网络的内容刷新方法及装置。
背景技术
在互联网上,为了提升用户访问网站的速度和用户体验,内容分发网络CDN(Content Delivery Network)的应用是相当广泛的。各大互联网公司,腾讯、百度等都在使用CDN来提升用户的访问体验,并把CDN服务作为自己的一个附属产品向开发者推广。未来CDN的应用会越来越广泛,其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定,其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
CDN的本质就是分布式缓存,其缓存的更新直接影响CDN的运行效果。现有技术对于CDN缓存的更新,主要是通过主动刷新或通过更新版本号、修改文件名来实现获取新的缓存。
其中主动刷新CDN缓存,是通过向各个CDN节点发送刷新指令,来达到缓存刷新目的。该主动刷新缓存的方案,由于网络问题,要把所有CDN节点都刷新,这需要有挺长的时间延迟,用户体验不佳。
而通过更新版本号或者修改文件名来实现获取新的缓存,目前有几种方案:
1)、通过每次发布时计算文件内容来生成文件名,这种方案对应用有很大的侵入性,需要动态更新静态资源的URL地址,而且应用和页面需同时发布,无法解藕,管理成本较高。
2)、更新版本号的方式,目前比较流行的是在配置文件里写上版本号,然后每次发布时,把版本号更新,这样用户访问到的所有静态资源就是最新的URL。由于静态资源文件对应的URL发生了改变,只要有一个静态资源文件发生改变,那么版本号一更新后,所有静态资源文件都会向CDN回源重新请求新的文件。由于URL发生了改变,那些没有改变过的文件也没办法使用原来的缓存,造成大规模回源,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访问地址对应的版本号相同的文件并更新。
本发明提出的一种内容分发网络的内容刷新方法及装置,根据用户的配置替换对应的URL为CDN访问地址,并重定向到CDN访问地址,减少用户的使用成本。并通过监控静态资源的变化,升级静态资源的版本,拼装到同一个CDN地址中的多个静态资源文件版本中取最大版本,来实现多文件组合的CDN缓存自动刷新效果。
附图说明
图1为本发明内容分发网络的内容刷新方法流程图;
图2为本发明实施例CDN网络结构示意图;
图3为本发明内容分发网络的内容刷新装置结构示意图。
具体实施方式
下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。
本实施例一种内容分发网络的内容刷新方法,如图1所示,包括:
步骤S1、获取源站点应用服务器根据用户访问请求返回给用户的网页内容,解析网页内容中的静态资源链接。
如图2所示,用户在浏览器中输入需要访问的网站域名后,域名解析服务器会向用户返回域名对应的IP地址,该IP地址指向用户需要访问的网站的应用服务器,即源站点应用服务器,以便用户向该地址发起访问。源站点应用服务器在收到用户的访问请求后,向用户返回网页内容。通常用户所访问的源站点应用服务器中所提供的网页内容会包含静态资源和动态资源。动态资源是指网页内容中经常变化的部分,例如一个电商网站的商品价格等;静态资源是指网页内容中比较稳定不变的资源,例如一个电商网站中的产品图片等。
在部署了CDN的网络中,CDN通常会缓存所服务的网站中的静态资源,这些静态资源通常比较大,需要占用较大的带宽,因此通过CDN缓存这些静态资源有利于向用户提供所缓存的内容,提高用户的访问反应速度。
本实施例的方法会获取源站点应用服务器根据用户访问请求返回给用户的网页内容,从中解析网页内容中的静态资源链接。
本实施例可以在源站点应用服务器中嵌入截取返回给用户的网页内容的程序,或嵌入截取返回给用户的网页内容的装置,用来获取源站点应用服务器根据用户访问请求返回给用户的网页内容。
获取的网页内容用于后续的分析和替换,首先要解析出其中的静态资源链接。解析出静态资源链接的目的,是想要替换其中的静态资源链接为CDN访问地址,以便由CDN向用户提供资源,达到就近向用户提供网页内容的目的,实现快速的响应。
例如:
用户访问了www.aliyun.com;
源站点应用服务器最终网页内容(html页面)里面包含了几个静态资源链接:
static.aliyun.com/test/a.js,b.js,c.js;
static.aliyun.com/test2/d.css,e.css,f.css。
即在获取源站点应用服务器根据用户访问请求返回给用户的网页内容后,解析出上述两条静态资源链接,用于后续的分析和替换。
步骤S2、根据预设置的静态域名和扩展名,匹配出静态资源链接对应的文件名。
本实施例获取网页内容的最终目的,是替换其中的静态资源链接为CDN访问地址,以便由CDN向用户提供资源,达到就近向用户提供网页内容的目的,实现快速的响应。
而在网站开发中,为了减少用户请求次数,通常网站都会对多个静态资源文件进行自动压缩和合并,例如:
静态资源文件:a.js,b.js,c.js;
在网页内容中,对应的最后生成的URL地址是:
http://***.com/static/a.js,b.js,c.js?v=2016。
因此,为了替换静态资源链接为CDN访问地址,就需要根据预设置的需要进行替换的静态资源的静态域名和扩展名,从静态资源链接中匹配出静态资源链接对应的文件名,然后才能进行替换。
下面通过具体的示例来描述替换过程:
例如阿里巴巴的阿里云中预设置的静态域名和扩展名分别为:
静态域名:static.aliyun.com;
扩展名:.js和.css。
即对于静态域名为static.aliyun.com,扩展名为.js和.css的静态资源链接,都进行替换为CDN访问地址。
则当用户访问了www.aliyun.com,源站点应用服务器返回网页内容(html页面),本实施例通过获取源站点应用服务器根据用户访问请求返回给用户的网页内容,解析网页内容中的静态资源链接,解析出的网页内容里面包含的几个静态资源链接,如下:
static.aliyun.com/test/a.js,b.js,c.js;
static.aliyun.com/test2/d.css,e.css,f.css。
本实施例的目的是对上述静态资源链接进行替换,为此需要根据预设置的静态域名和扩展名,匹配出静态资源链接对应的文件名,如下:
a.js、b.js、c.js、d.css、e.css和f.css。
即根据静态资源链接,和预设置的需要进行替换的静态资源的静态域名和扩展名,匹配出静态资源链接对应的文件名。
需要说明的是,本发明并不限于获取匹配出静态资源链接对应的文件名的方法,可以通过预设置的需要进行替换的静态资源的静态域名和扩展名来匹配,还可以直接根据静态资源的通用文件名来匹配,这里不再赘述。
步骤S3、根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号。
现有技术对于CDN的刷新比较流行的是通过更新版本号的方式,即在网页的配置文件里写上版本号,然后每次发布时,把版本号更新,这样用户访问到的所有静态资源就是最新的URL。这个方案只要有一个静态资源文件发生改变,那么版本号一更新后,所有静态资源文件都会向CDN回源重新请求新的文件,这样那些没有改变过的文件没办法使用原来的缓存,造成大规模回源,CDN源站压力增大。
本实施例不在配置文件里写上版本号,而是监听源站点应用服务器的文件更新,然后当文件发生变化时,记录文件的最新版本号。文件的版本号可以直接记录为版本的序号,也可以采用最后更新时间戳作为最新的版本号。将记录的文件的最新版本号放入预先收集的文件版本数据中,以便根据文件名查找其对应的版本号。
需要说明的是,预先收集的文件版本数据中还可以进一步记录用户选定的版本号。当根据静态资源链接对应的文件名,从预先收集的文件版本数据中获取文件的版本号时,如果存在用户选定的版本号则优先使用,否则使用最新版本号。
例如:
假设当前所有文件都是初始版本,最后修改时间是:1460355200,即所有文件初始版本号为1460355200。而当修改了c.js和e.css的文件内容时,根据最后更新时间戳将其版本号升级为:1460355350。
从而在根据静态资源链接对应的文件名,从预先收集的文件版本数据中获取文件的版本号时,用户可以从预先收集的文件版本数据中获取文件对应的版本号:
c.js和e.css的版本号为1460355200(其中1460355200为用户选定的版本号);
或c.js和e.css的版本号为1460355350(无用户选定的版本号,选择最新版本号作为文件的版本号)。
步骤S4、以获取的文件版本号,拼装CDN访问地址,并在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容。
在获得所有静态资源文件的版本号后,则可以对静态资源链接进行替换,对于如下静态资源链接:
Static.aliyun.com/test/a.js,b.js,c.js;
将链接中所有文件的版本号中进行比较,从获取的文件版本号中选取最大值。即从a.js、b.js、c.js的版本号中取最大值,通过比较可知,最大值为:1460355350,作为该链接的版本号,自动将这个链接替换成:
cdn.aliyun.com/test/a.js,b.js,c.js?v=1460355350。
如果存在用户选定的版本号则优先使用,例如选定的版本号为1460355200,则将该值作为该链接的版本号。
同样可以将静态资源链接Static.aliyun.com/test2/d.css,e.css,f.css进行替换,这里不再赘述。
容易理解的是,本实施例CDN中的内容根据CDN访问地址进行刷新,即当CDN访问地址中的文件版本号与内容分发网络CDN中的文件版本号相同时,认为CDN访问地址所对应的文件没有更新,不需要刷新;而当CDN访问地址中的文件版本号与内容分发网络CDN中的文件版本号不相同时,认为CDN访问地址所对应的文件产生了更新,需要刷新内容分发网络中该CDN访问地址对应的内容。
在刷新时,根据CDN访问地址对应的文件名,从源站点应用服务器同步所对应的文件。同步时,可以从源站点应用服务器下载该CDN访问地址对应的所有文件并更新。优选地,仅下载源站点应用服务器中与CDN访问地址对应的版本号相同的文件并更新。
例如,对于cdn.aliyun.com/test/a.js,b.js,c.js?v=1460355350,其对应的版本号1460355350与CDN中的文件版本号(1460355200)不同,因此需要从源站点应用服务器中去更新对应的文件,即将CDN中的内容刷新为与源站点应用服务器中对应的文件一致,具体是将CDN中的c.js更新为版本号为1460355350的c.js,而a.js、b.js没有变化。在更新时,可以从源站点应用服务器中下载a.js,b.js,c.js并更新CDN中对应的文件,或仅下载c.js并更新CDN中对应的文件。
步骤S5、用拼装的CDN访问地址替换页面内容中的对应静态资源链接,将替换后的页面内容发送给用户。
在替换为CDN访问地址后,返回替换后的网页内容(html页面)给用户,该网页内容中的静态资源链接为CDN访问地址,从而用户能够直接从CDN中获取对应的静态资源,实现快速的响应。
容易理解的是,如果此时用户直接在浏览器中直接访问:
http://static.aliyun.com/test/a.js,b.js,c.js,
本实施例会将该链接重定向到其对应的CDN访问地址:
http://cdn.aliyun.com/test/a.js,b.js,c.js?v=1460355350。
从而直接从CDN中获取对应的静态资源,返回对应的网页内容,实现快速的响应。
如图3所示,本实施例一种内容分发网络的内容刷新装置,用于对内容分发网络CDN中的内容进行刷新,可以作为一个单独的专用服务器设置在内容分发网络中,或作为内容分发网络中的源站点应用服务器或CDN的一部分。该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在服务器内的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。
本实施例内容分发网络的内容刷新装置,包括:
静态资源链接解析模块,用于获取源站点应用服务器根据用户访问请求返回给用户的网页内容,解析网页内容中的静态资源链接;
文件版本号获取模块,用于根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号;
内容刷新模块,用于以获取的文件版本号,拼装CDN访问地址,并在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容。
与上述方法对应地,本实施例内容刷新装置各模块详细说明如下:
静态资源链接解析模块在解析出网页内容中的静态资源链接之后,还用于根据预设置的静态域名和扩展名,匹配出静态资源链接对应的文件名。
内容刷新模块还用于用拼装的CDN访问地址替换页面内容中的对应静态资源链接,将替换后的页面内容发送给用户。
需要说明的是,匹配出静态资源链接对应的文件名,可以由静态资源链接解析模块来实现,或采用内容刷新模块来实现,或者可以采用单独的模块来实现。同样拼装的CDN访问地址替换页面内容中的对应静态资源链接,将替换后的页面内容发送给用户,可以采用内容刷新模块来实现,或者可以采用单独的模块来实现。
本实施例文件版本号获取模块根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号,执行如下操作:
监听源站点应用服务器的文件更新,当文件发生变化时,记录文件的最新版本号到收集的文件版本数据中;
根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件对应的最新版本号。
或者,文件版本号获取模块根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号,执行如下操作:
监听源站点应用服务器的文件更新,当文件发生变化时,记录文件的最新版本号到收集的文件版本数据中;
根据用户的选择,在收集的文件版本数据中记录文件对应的用户选定的版本号,
根据静态资源链接对应的文件名,从收集的文件版本数据中查看是否存在文件对应的用户选定的版本号,如果存在则选定用户选定的版本号,否则选定文件对应的最新版本号。
本实施例内容刷新模块以获取的文件版本号,拼装CDN访问地址,执行如下操作:
从获取的文件版本号中选取最大值;
以选取的最大值作为静态资源链接的版本号,生成CDN访问地址。
本实施例内容刷新模块在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容,执行如下操作:
根据CDN访问地址对应的文件名,从源站点应用服务器同步所对应的文件。
本实施例内容刷新模块从源站点应用服务器同步所对应的文件,执行如下操作:
从源站点应用服务器下载该CDN访问地址对应的文件并更新。
或者,所述内容刷新模块从源站点应用服务器同步所对应的文件,执行如下操作:
从源站点应用服务器下载与CDN访问地址对应的版本号相同的文件并更新。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (18)

1.一种内容分发网络的内容刷新方法,用于对内容分发网络CDN中的内容进行刷新,其特征在于,所述内容分发网络的内容刷新方法,包括:
获取源站点应用服务器根据用户访问请求返回给用户的网页内容,解析网页内容中的静态资源链接;
根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号;
以获取的文件版本号,拼装CDN访问地址,并在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容。
2.根据权利要求1所述的内容分发网络的内容刷新方法,其特征在于,所述内容分发网络的内容刷新方法,在解析出网页内容中的静态资源链接之后,还包括:
根据预设置的静态域名和扩展名,匹配出静态资源链接对应的文件名。
3.根据权利要求1所述的内容分发网络的内容刷新方法,其特征在于,所述内容分发网络的内容刷新方法,还包括:
用拼装的CDN访问地址替换页面内容中的对应静态资源链接,将替换后的页面内容发送给用户。
4.根据权利要求1所述的内容分发网络的内容刷新方法,其特征在于,所述根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号,包括:
监听源站点应用服务器的文件更新,当文件发生变化时,记录文件的最新版本号到收集的文件版本数据中;
根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件对应的最新版本号。
5.根据权利要求1所述的内容分发网络的内容刷新方法,其特征在于,所述根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号,包括:
监听源站点应用服务器的文件更新,当文件发生变化时,记录文件的最新版本号到收集的文件版本数据中;
根据用户的选择,在收集的文件版本数据中记录文件对应的用户选定的版本号,
根据静态资源链接对应的文件名,从收集的文件版本数据中查看是否存在文件对应的用户选定的版本号,如果存在则选定用户选定的版本号,否则选定文件对应的最新版本号。
6.根据权利要求1所述的内容分发网络的内容刷新方法,其特征在于,所述以获取的文件版本号,拼装CDN访问地址,包括:
从获取的文件版本号中选取最大值;
以选取的最大值作为静态资源链接的版本号,生成CDN访问地址。
7.根据权利要求1所述的内容分发网络的内容刷新方法,其特征在于,所述在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容,包括:
根据CDN访问地址对应的文件名,从源站点应用服务器同步所对应的文件。
8.根据权利要求7所述的内容分发网络的内容刷新方法,其特征在于,所述从源站点应用服务器同步所对应的文件,包括:
从源站点应用服务器下载该CDN访问地址对应的文件并更新。
9.根据权利要求7所述的内容分发网络的内容刷新方法,其特征在于,所述从源站点应用服务器同步所对应的文件,包括:
从源站点应用服务器下载与CDN访问地址对应的版本号相同的文件并更新。
10.一种内容分发网络的内容刷新装置,用于对内容分发网络CDN中的内容进行刷新,其特征在于,所述内容分发网络的内容刷新装置,包括:
静态资源链接解析模块,用于获取源站点应用服务器根据用户访问请求返回给用户的网页内容,解析网页内容中的静态资源链接;
文件版本号获取模块,用于根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号;
内容刷新模块,用于以获取的文件版本号,拼装CDN访问地址,并在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容。
11.根据权利要求10所述的内容分发网络的内容刷新装置,其特征在于,所述静态资源链接解析模块在解析出网页内容中的静态资源链接之后,还用于根据预设置的静态域名和扩展名,匹配出静态资源链接对应的文件名。
12.根据权利要求10所述的内容分发网络的内容刷新装置,其特征在于,所述内容刷新模块还用于用拼装的CDN访问地址替换页面内容中的对应静态资源链接,将替换后的页面内容发送给用户。
13.根据权利要求10所述的内容分发网络的内容刷新装置,其特征在于,所述文件版本号获取模块根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号,执行如下操作:
监听源站点应用服务器的文件更新,当文件发生变化时,记录文件的最新版本号到收集的文件版本数据中;
根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件对应的最新版本号。
14.根据权利要求10所述的内容分发网络的内容刷新装置,其特征在于,所述文件版本号获取模块根据静态资源链接对应的文件名,从收集的文件版本数据中获取文件的版本号,执行如下操作:
监听源站点应用服务器的文件更新,当文件发生变化时,记录文件的最新版本号到收集的文件版本数据中;
根据用户的选择,在收集的文件版本数据中记录文件对应的用户选定的版本号,
根据静态资源链接对应的文件名,从收集的文件版本数据中查看是否存在文件对应的用户选定的版本号,如果存在则选定用户选定的版本号,否则选定文件对应的最新版本号。
15.根据权利要求10所述的内容分发网络的内容刷新装置,其特征在于,所述内容刷新模块以获取的文件版本号,拼装CDN访问地址,执行如下操作:
从获取的文件版本号中选取最大值;
以选取的最大值作为静态资源链接的版本号,生成CDN访问地址。
16.根据权利要求10所述的内容分发网络的内容刷新装置,其特征在于,所述内容刷新模块在CDN访问地址中的文件版本号与内容分发网络CDN中对应的文件版本号不相同时,刷新内容分发网络中该CDN访问地址对应的内容,执行如下操作:
根据CDN访问地址对应的文件名,从源站点应用服务器同步所对应的文件。
17.根据权利要求16所述的内容分发网络的内容刷新装置,其特征在于,所述内容刷新模块从源站点应用服务器同步所对应的文件,执行如下操作:
从源站点应用服务器下载该CDN访问地址对应的文件并更新。
18.根据权利要求16所述的内容分发网络的内容刷新装置,其特征在于,所述内容刷新模块从源站点应用服务器同步所对应的文件,执行如下操作:
从源站点应用服务器下载与CDN访问地址对应的版本号相同的文件并更新。
CN201610390436.5A 2016-06-03 2016-06-03 一种内容分发网络的内容刷新方法及装置 Active CN107465707B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610390436.5A CN107465707B (zh) 2016-06-03 2016-06-03 一种内容分发网络的内容刷新方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610390436.5A CN107465707B (zh) 2016-06-03 2016-06-03 一种内容分发网络的内容刷新方法及装置

Publications (2)

Publication Number Publication Date
CN107465707A true CN107465707A (zh) 2017-12-12
CN107465707B CN107465707B (zh) 2021-02-02

Family

ID=60545629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610390436.5A Active CN107465707B (zh) 2016-06-03 2016-06-03 一种内容分发网络的内容刷新方法及装置

Country Status (1)

Country Link
CN (1) CN107465707B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228282A (zh) * 2018-04-04 2018-06-29 北京三快在线科技有限公司 用于网站页面加载的方法及装置
CN108268664A (zh) * 2018-02-12 2018-07-10 沈阳东软医疗系统有限公司 一种更新文件资源访问地址的方法和装置
CN108280174A (zh) * 2018-01-22 2018-07-13 网宿科技股份有限公司 前端文件构建方法和服务器、页面访问方法和终端
CN108347479A (zh) * 2018-01-26 2018-07-31 政采云有限公司 基于内容分发网络的多仓库静态资源上传方法和系统
CN108632388A (zh) * 2018-05-15 2018-10-09 聚好看科技股份有限公司 一种分页内容的加载方法及装置
CN108694066A (zh) * 2018-05-09 2018-10-23 北京酷我科技有限公司 一种tableView延迟刷新的方法
CN109246224A (zh) * 2018-09-25 2019-01-18 麒麟合盛网络技术股份有限公司 Cdn系统的容器化部署方法及装置
CN110244975A (zh) * 2018-03-08 2019-09-17 北京京东尚科信息技术有限公司 一种静态资源版本号的生成方法和装置
CN110809036A (zh) * 2019-10-25 2020-02-18 无线生活(北京)信息技术有限公司 资源更新方法及装置
CN110912769A (zh) * 2019-11-12 2020-03-24 中移(杭州)信息技术有限公司 Cdn缓存命中率统计方法、系统、网络设备及存储介质
CN110955851A (zh) * 2019-11-29 2020-04-03 海南车智易通信息技术有限公司 一种网络请求处理方法、系统、计算设备
CN111552909A (zh) * 2020-05-06 2020-08-18 福建天晴在线互动科技有限公司 一种网站静态资源管理方法及其系统
CN111949902A (zh) * 2020-08-17 2020-11-17 上海七牛信息技术有限公司 一种cdn内容刷新系统及方法
WO2021007752A1 (zh) * 2019-07-15 2021-01-21 华为技术有限公司 内容分发网络中的回源方法及相关装置
CN112667937A (zh) * 2020-12-29 2021-04-16 中国平安人寿保险股份有限公司 处理缓存数据方法及其相关产品
CN112861030A (zh) * 2019-11-27 2021-05-28 北京金山云网络技术有限公司 Cdn的刷新方法和装置、缓存服务器以及存储介质
CN113382027A (zh) * 2020-02-25 2021-09-10 福建天泉教育科技有限公司 一种避免cdn缓存不更新的方法及其系统
CN113411364A (zh) * 2020-03-16 2021-09-17 北京金山云网络技术有限公司 资源获取方法、装置及服务器

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626486A (zh) * 2008-07-11 2010-01-13 索尼株式会社 记录设备,软件更新数据获得方法,程序和数据传送系统
US20130007108A1 (en) * 2011-06-30 2013-01-03 Giles Goodwin Live Updates of Embeddable Units
CN103338272A (zh) * 2013-07-23 2013-10-02 星云融创(北京)信息技术有限公司 一种内容分发网络及其缓存实现方法
CN104104707A (zh) * 2013-04-12 2014-10-15 腾讯科技(深圳)有限公司 网页数据更新方法、终端、缓存服务器及系统
CN104113567A (zh) * 2013-04-18 2014-10-22 腾讯科技(深圳)有限公司 内容分发网络的数据处理方法、装置及系统
US20150106878A1 (en) * 2011-06-14 2015-04-16 At&T Intellectual Property I, L.P. System And Method For Providing A Content Delivery Network Via A Motor Vehicle
CN104714965A (zh) * 2013-12-16 2015-06-17 阿里巴巴集团控股有限公司 静态资源去重方法、静态资源管理方法及装置
CN105049486A (zh) * 2015-06-16 2015-11-11 腾讯科技(北京)有限公司 静态文件的版本管理、文件拉取控制方法、装置及系统
US20160042278A1 (en) * 2014-08-06 2016-02-11 International Business Machines Corporation Predictive adjustment of resource refresh in a content delivery network

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626486A (zh) * 2008-07-11 2010-01-13 索尼株式会社 记录设备,软件更新数据获得方法,程序和数据传送系统
US20150106878A1 (en) * 2011-06-14 2015-04-16 At&T Intellectual Property I, L.P. System And Method For Providing A Content Delivery Network Via A Motor Vehicle
US20130007108A1 (en) * 2011-06-30 2013-01-03 Giles Goodwin Live Updates of Embeddable Units
CN104104707A (zh) * 2013-04-12 2014-10-15 腾讯科技(深圳)有限公司 网页数据更新方法、终端、缓存服务器及系统
CN104113567A (zh) * 2013-04-18 2014-10-22 腾讯科技(深圳)有限公司 内容分发网络的数据处理方法、装置及系统
CN103338272A (zh) * 2013-07-23 2013-10-02 星云融创(北京)信息技术有限公司 一种内容分发网络及其缓存实现方法
CN104714965A (zh) * 2013-12-16 2015-06-17 阿里巴巴集团控股有限公司 静态资源去重方法、静态资源管理方法及装置
US20160042278A1 (en) * 2014-08-06 2016-02-11 International Business Machines Corporation Predictive adjustment of resource refresh in a content delivery network
CN105049486A (zh) * 2015-06-16 2015-11-11 腾讯科技(北京)有限公司 静态文件的版本管理、文件拉取控制方法、装置及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李建强: ""CDN-P2P系统的中心服务器与客户端节点的设计与实现"", 《中国优秀硕士学位论文全文数据库信息科技辑》 *
陈妍; 李增智; 王云岚; 廖志刚: ""CDN网络中对象一致性算法研究"", 《电子学报》 *

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108280174A (zh) * 2018-01-22 2018-07-13 网宿科技股份有限公司 前端文件构建方法和服务器、页面访问方法和终端
CN108347479B (zh) * 2018-01-26 2020-12-18 政采云有限公司 基于内容分发网络的多仓库静态资源上传方法和系统
CN108347479A (zh) * 2018-01-26 2018-07-31 政采云有限公司 基于内容分发网络的多仓库静态资源上传方法和系统
CN108268664A (zh) * 2018-02-12 2018-07-10 沈阳东软医疗系统有限公司 一种更新文件资源访问地址的方法和装置
CN108268664B (zh) * 2018-02-12 2021-06-08 东软医疗系统股份有限公司 一种更新文件资源访问地址的方法和装置
CN110244975A (zh) * 2018-03-08 2019-09-17 北京京东尚科信息技术有限公司 一种静态资源版本号的生成方法和装置
CN108228282A (zh) * 2018-04-04 2018-06-29 北京三快在线科技有限公司 用于网站页面加载的方法及装置
CN108228282B (zh) * 2018-04-04 2021-08-27 北京三快在线科技有限公司 用于网站页面加载的方法及装置
CN108694066A (zh) * 2018-05-09 2018-10-23 北京酷我科技有限公司 一种tableView延迟刷新的方法
CN108694066B (zh) * 2018-05-09 2021-04-27 北京酷我科技有限公司 一种tableView延迟刷新的方法
CN108632388A (zh) * 2018-05-15 2018-10-09 聚好看科技股份有限公司 一种分页内容的加载方法及装置
CN109246224A (zh) * 2018-09-25 2019-01-18 麒麟合盛网络技术股份有限公司 Cdn系统的容器化部署方法及装置
WO2021007752A1 (zh) * 2019-07-15 2021-01-21 华为技术有限公司 内容分发网络中的回源方法及相关装置
CN110809036A (zh) * 2019-10-25 2020-02-18 无线生活(北京)信息技术有限公司 资源更新方法及装置
CN110809036B (zh) * 2019-10-25 2022-05-10 无线生活(北京)信息技术有限公司 资源更新方法及装置
CN110912769A (zh) * 2019-11-12 2020-03-24 中移(杭州)信息技术有限公司 Cdn缓存命中率统计方法、系统、网络设备及存储介质
CN110912769B (zh) * 2019-11-12 2021-08-10 中移(杭州)信息技术有限公司 Cdn缓存命中率统计方法、系统、网络设备及存储介质
CN112861030B (zh) * 2019-11-27 2024-04-05 北京金山云网络技术有限公司 Cdn的刷新方法和装置、缓存服务器以及存储介质
CN112861030A (zh) * 2019-11-27 2021-05-28 北京金山云网络技术有限公司 Cdn的刷新方法和装置、缓存服务器以及存储介质
CN110955851A (zh) * 2019-11-29 2020-04-03 海南车智易通信息技术有限公司 一种网络请求处理方法、系统、计算设备
CN113382027A (zh) * 2020-02-25 2021-09-10 福建天泉教育科技有限公司 一种避免cdn缓存不更新的方法及其系统
CN113411364A (zh) * 2020-03-16 2021-09-17 北京金山云网络技术有限公司 资源获取方法、装置及服务器
CN113411364B (zh) * 2020-03-16 2022-10-11 北京金山云网络技术有限公司 资源获取方法、装置及服务器
CN111552909B (zh) * 2020-05-06 2022-07-05 福建天晴在线互动科技有限公司 一种网站静态资源管理方法及其系统
CN111552909A (zh) * 2020-05-06 2020-08-18 福建天晴在线互动科技有限公司 一种网站静态资源管理方法及其系统
CN111949902A (zh) * 2020-08-17 2020-11-17 上海七牛信息技术有限公司 一种cdn内容刷新系统及方法
CN112667937A (zh) * 2020-12-29 2021-04-16 中国平安人寿保险股份有限公司 处理缓存数据方法及其相关产品

Also Published As

Publication number Publication date
CN107465707B (zh) 2021-02-02

Similar Documents

Publication Publication Date Title
CN107465707A (zh) 一种内容分发网络的内容刷新方法及装置
JP6410280B2 (ja) ウェブサイト・アクセス方法、装置、およびウェブサイト・システム
US10108595B2 (en) Method and system for automated analysis and transformation of web pages
CN104573025B (zh) 一种提高页面加载速度的方法及系统
EP3172680B1 (en) Fast rendering of websites containing dynamic content and stale content
US20150082151A1 (en) Page display method and device
WO2016026384A1 (zh) 一种客户端页面显示方法、装置及系统
US20150188999A1 (en) System and method to extend the capabilities of a web browser to improve the web application performance
JP6383430B2 (ja) プロファイルベースのキャッシュ管理
CN102882974A (zh) 一种通过网站识别版本号节省网站访问资源的方法
CN105589956B (zh) 一种用户画像的方法及装置
CN103347089A (zh) 一种对网站动态资源和静态资源分离加速的方法及装置
CN103873502A (zh) 缓存更新方法及系统、提供更新资源的方法及系统
CN111031128B (zh) 基于云端技术实现无天窗的网站IPv6改造的方法
CN103152367A (zh) 一种缓存的动态维护更新方法及系统
CN108780458A (zh) 一种页面缓存处理方法、装置和服务器
US20140006918A1 (en) Method and system for web page rearrangement
US9087134B2 (en) Systems and methods for decorating web pages
CN101895550B (zh) 一种应用于互联网网站的兼容动静态内容的缓冲加速方法
Shivakumar et al. Getting Started with Web Performance Optimization
ЛИТВИНОВ METHODS FOR OPTIMIZING THE LOADING AND UPDATING OF WEB PAGES USING CLOUD TECHNOLOGIES
CN117131295A (zh) 资源管理方法、系统、装置、电子设备及存储介质
Guerrero et al. Mining web usage and content structure data to improve web cache performance in content aggregation systems
Liu et al. Mitigating Redundant Data Transfers for Mobile Web Applications via App-Specific Cache Space
CN102227895A (zh) 基于内容发布定向广告的方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1247739

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant