静态资源去重方法、静态资源管理方法及装置的制造方法
【技术领域】
[0001] 本申请涉及资源去重领域,具体涉及一种静态资源去重的方法和装置。本申请同 时提供一种用于CDN节点的静态资源去重的方法和装置,以及一种用于静态资源去重的静 态资源管理方法和装置。
【背景技术】
[0002] 互联网(简称internet)是一种公用信息的载体,是大众传媒的一种。具有快捷性、 普及性,是现今最流行、最受欢迎的传媒之一。不论是使用台式机还是移动设备,只要安装 了浏览器,用户都可以随时随地获取互联网资讯,实现了远程办公、电子商务、网络社交、即 时通讯等应用和服务,实现了视听、游戏等娱乐功能。
[0003] 互联网的架构是基于客户端和服务器模型的,S卩:各种各样的资源存储在服务 器上,用户通过客户端来访问服务器上的资源,具体的访问过程是通过HTTP(Hypertext transferprotocol超文本传输协议)协议实现的。HTTP协议是用于从ffffff服务器传输超 文本到本地浏览器的传送协议,它不仅可以使浏览器更加高效,而且还能提供缓存功能,减 少网络传输对带宽资源的占用。
[0004] HTTP协议是基于请求/响应模式的,基本工作原理是这样的:用户在客户端的浏 览器中输入网址,通过HTTP协议向服务器提出浏览网页的要求,服务器收到来自客户端的 请求后,将客户端请求的网页数据传输给客户端,这个动作称为响应,客户端浏览器将接收 到的网页数据提取出来,并进行相应的显示或播放,用户就得到了所需的信息。
[0005] 随着互联网上的应用越来越多,用户已经不再满足于按照请求/响应模式从互联 网上获取信息了,而是出现了大量上传数据的需要,例如:向网站上传文本、图片、视频、音 频、照片等,向个人空间上传照片,向淘宝店铺上传所售商品的图片资料等。随着上传的静 态资源文件越来越丰富,同时也出现了大量的内容重复的静态资源文件。这些静态资源文 件在服务器上存储的目录可能不同,文件名称也可能不同,但是文件的内容却是相同的,用 户访问这些静态资源文件,就可能出现重复下载的情况,会造成对网络带宽资源的浪费。
[0006] 以淘宝相关业务为例,淘宝上有很多从事第三方店铺装修服务的公司,他们为不 同的商家装修店铺,但使用的模板却都大致相同,其中就存在着大量的重复静态文件:图 片、CSS(CascadingStyleSheets层叠样式表单)、JS(JavaScript)等。每当用户访问一 家新的淘宝店铺或者某店铺不同位置的商品时,用户的浏览器就有可能从服务器上下载重 复的静态资源文件,从而占用不必要的带宽资源。
[0007] 另外,对于⑶N(contentdeliverynetwork内容分发网络)服务器(即:Q)N节点) 来说,为了使用户能够就近取得所需资源,提高用户访问网站的速度,通常CDN节点在内存 缓存了大量的静态资源文件,内容重复的现象更为突出,不仅会浪费带宽资源,而且大量重 复资源对存储空间的占用,还会降低CDN节点的命中率,降低CDN节点对用户需求的响应速 度。
【发明内容】
[0008] 本申请提供一种静态资源去重的方法和装置,以解决重复下载静态资源文件、浪 费网络带宽资源的问题。本申请另外提供一种用于CDN节点的静态资源去重的方法和装 置,以及一种用于静态资源去重的静态资源管理方法和装置。
[0009] 本申请的一种静态资源去重的方法,包括:
[0010] 接收获取静态资源文件的请求;
[0011] 判断是否存在与请求的静态资源文件内容相同并且访问量满足设定要求的静态 资源文件,并将其标记为优选静态资源文件;
[0012] 若是,返回跳转到所述任一优选静态资源文件的应答;若否,返回所述请求的静态 资源文件。
[0013] 可选的,所述内容相同并且访问量满足设定要求的静态资源文件是指,内容相同 并且访问量最大的静态资源文件。
[0014] 可选的,所述方法还包括:
[0015] 查找内容相同的静态资源文件;
[0016] 获取所述内容相同的静态资源文件的访问量。
[0017] 可选的,所述查找内容相同的静态资源文件包括:
[0018] 遍历所有所述静态资源文件;
[0019] 针对每个静态资源文件,根据所述静态资源文件的内容,采用统一的算法生成能 够唯一标识所述静态资源文件的校验值;
[0020] 将校验值相同的静态资源文件标识为内容相同。
[0021] 可选的,所述统一的算法为消息摘要算法。
[0022] 可选的,所述消息摘要算法包括MD5、SHA1或SHA256算法。
[0023] 可选的,在将所述校验值相同的静态资源文件标识为内容相同之前,先判断所述 校验值相同的静态资源文件的内容是否相同;若是,将所述校验值相同的静态资源文件标 识为内容相同。
[0024] 可选的,所述判断所述校验值相同的静态资源文件的内容是否相同,包括:
[0025] 采用读取并比较文件内容的方式判断所述校验值相同的静态资源文件的内容是 否相同;
[0026] 或者,采用不同的算法再次获取所述静态资源文件内容的新校验值,并通过比较 新校验值是否相同,来判断所述校验值相同的静态资源文件的内容是否相同。
[0027] 可选的,所述获取所述内容相同的静态资源文件的访问量包括:
[0028] 统计分析静态资源文件的访问日志,计算所述内容相同的静态资源文件的访问 量。
[0029] 可选的,所述方法还包括:
[0030] 根据所述内容相同的静态资源文件和所述访问量,生成内容相同的静态资源文件 的URL到优选静态资源文件URL跳转指示的跳转表;
[0031] 相应的,所述判断是否存在与请求的静态资源文件内容相同并且访问量满足设定 要求的静态资源文件,具体是指:
[0032] 查找所述跳转表中是否存在请求的静态资源文件的URL至优选静态资源文件URL 的跳转指示。
[0033] 可选的,在所述接收获取静态资源文件的请求之后,首先执行下述步骤:
[0034] 判断所述请求中是否包含请求方有所述静态资源文件的缓存文件的标识;
[0035] 若是,从所述请求中提取所述缓存文件的最后修改时间,与本地存储的相应文件 的最后修改时间进行比较,判断所述缓存文件是否是最新的,若是,则返回使用请求方本地 缓存文件的应答,不继续执行后续的步骤。
[0036] 可选的,所述静态资源文件包括:图片文件、文本文件、音频文件、视频文件、动画 文件、PPT文件、Word文件、Excel文件、PDF文件、软件包文件或压缩包文件。
[0037] 相应的,本申请还提供一种静态资源去重的装置,包括:
[0038] 请求接收单元,用于接收获取静态资源文件的请求;
[0039] 优选资源判断单元,用于判断是否存在与请求的静态资源文件内容相同并且访问 量满足设定要求的静态资源文件,并将其标记为优选静态资源文件;
[0040] 第一应答单元,用于返回对所述请求的应答;如果存在所述优选静态资源文件,则 返回跳转到任一所述优选静态资源文件的应答,否则,返回所述请求的静态资源文件。
[0041] 此外,本申请还提供一种用于⑶N节点的静态资源去重的方法,包括:
[0042] 接收获取静态资源文件的请求;