CN108259198B - 一种域名缓存命中率的预判方法、装置及设备 - Google Patents
一种域名缓存命中率的预判方法、装置及设备 Download PDFInfo
- Publication number
- CN108259198B CN108259198B CN201611243260.7A CN201611243260A CN108259198B CN 108259198 B CN108259198 B CN 108259198B CN 201611243260 A CN201611243260 A CN 201611243260A CN 108259198 B CN108259198 B CN 108259198B
- Authority
- CN
- China
- Prior art keywords
- field
- cache
- url
- http
- cache hit
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种域名缓存命中率的预判方法、装置及设备,用于通信技术领域,能够解决后向判断域名命中率的方法需要花费较长的时间,并且浪费缓存资源的问题。该方法包括:从用户的访问数据获取统一资源定位符URL;从URL中分离与超文本传输协议HTTP缓存相关的字段;基于与HTTP缓存相关的字段确定URL的缓存命中结果。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种域名缓存命中率的预判方法、装置及设备。
背景技术
缓存是将需要频繁访问的网络内容存放在离用户较近、访问速度更快的***中,以提高内容访问速度的一种技术,互联网缓存是互联网提高访问速度的重要手段。在互联网上过亿的域名中,并非所有域名都适合通过互联网缓存进行加速,为了节省缓存资源,不经常访问的域名应当及时从缓存中移除或不进行缓存,通常域名的命中率为衡量域名是否适合进行缓存的参数。目前,互联网缓存中大多采用后向判断的方式来判断域名命中率,即将域名添加至互联网缓存白名单中,在运行一段时间后,通过缓存日志统计域名的命中次数,继而计算域名的命中率。但是,这种方法需要积累较大的样本量才可以确保计算结果的准确率,样本量的积累意味着花费较长的时间,并且不需要缓存的域名在样本量积累时会长时间内占用缓存的资源,造成缓存资源的浪费。
发明内容
本发明实施例提供了一种域名缓存命中率的预判方法、装置及设备,能够解决后向判断域名命中率的方法需要花费较长的时间,并且浪费缓存资源的问题。
第一方面,本发明提供了一种缓存命中率的预判方法,包括:从用户的访问数据获取URL(Uniform Resource Locator,统一资源定位符);从URL中分离与HTTP(HyperTextTransfer Protocol,超文本传输协议)缓存相关的字段;基于与HTTP缓存相关的字段确定URL的缓存命中结果。
第二方面,本发明提供了一种互联网缓存命中率的预判装置,包括:
获取单元,用于从用户的访问数据获取统一资源定位符URL;
分离单元,用于从所述URL中分离与超文本传输协议HTTP缓存相关的字段;
判定单元,用于基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果。
第三方面,本发明提供了一种互联网缓存命中率的预判设备,包括:
存储器、处理器、通信接口和总线;
存储器、处理器和通信接口通过总线连接并完成相互间的通信;
存储器用于存储程序代码;
处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行一种域名缓存命中率的预判方法;其中,域名缓存命中率的预判方法包括:
从用户的访问数据获取统一资源定位符URL;
从所述URL中分离与超文本传输协议HTTP缓存相关的字段;
基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果。
本发明实施例提供了一种域名缓存命中率的预判方法、装置及设备,本发明中从用户访问的数据中获取用户访问的URL,并基于从URL中分离出出的与HTTP缓存相关的字段来确定URL的缓存命中结果,从而根据缓存命中结果对URL是否缓存进行判断。如此,不需对样本进行积累,通过用户数据即可进行计算命中率,不需要花费较长的时间;并且不需要先将域名进行缓存即可判定缓存命中结果,避免了先将目标域名进行缓存从而造成缓存资源的浪费的情况。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例提供的域名缓存命中率的预判方法的示意性流程图;
图2为在图1所示的域名缓存命中率预判方法中命中率预判的示意性流程图;
图3是根据本发明实施例提供的URL级的命中率判断方法流程图;
图4是根据本发明实施例提供的域名缓存命中率的预判装置的示意性框图;
图5是根据本发明实施例提供的域名缓存命中率的预判设备的示意性框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了根据本发明实施例的域名缓存命中率的预判方法的示意性流程图。该方法包括以下步骤:110,从用户的访问数据获取URL;120,从URL中分离与超文本传输协议HTTP缓存相关的字段;130,基于与HTTP缓存相关的字段确定URL的缓存命中结果。
在步骤110中,用户的访问数据可以为用户访问互联网时历史数据,可以预先对历史数据进行获取,也可以为用户实时的访问数据。用户的访问数据中包括访问的域名,以及访问的属于各域名的URL,所以可以从用户的访问数据中获取域名和属于域名的URL。
在步骤120中,本发明实施例中基于与HTTP缓存相关的字段对目标域名的缓存命中率进行计算,所以分离出将URL中与HTTP缓存相关的字段分离出来。
具体的,与HTTP缓存相关的字段包括HTTP请求头域request header中的字段和/或HTTP响应头域response header中的字段。
在步骤130中,针对URL,通过步骤120中分离的与HTTP缓存相关的字段可以判断其缓存命中结果。URL的缓存命中结果表示了URL对应内容的缓存命中情况。
具体的,缓存命中结果可以包括缓存或不缓存,缓存表示URL对应内容可以进行缓存,不缓存表示URL对应内容不可以进行缓存。缓存的缓存命中结果还可以包括缓存且命中或缓存不命中,即可以缓存的URL的缓存命中结果还可以为缓存且命中或缓存不命中,缓存且命中表示URL对应内容可以进行缓存命并且可以命中,缓存不命中表示URL对应内容可以进行缓存但不会命中。
需要说明的是,本发明实施例中,在遍历各URL结束后,可以汇聚各URL的缓存命中结果,得出域名的命中率,具体的可以参见图2,图2为在图1所示的域名缓存命中率预判方法中命中率预判的示意性流程图。
本发明实施例中从用户访问的数据中获取用户访问的URL,并基于从URL中分离出出的与HTTP缓存相关的字段来确定URL的缓存命中结果,从而根据缓存命中结果对URL是否缓存进行判断。如此,不需对样本进行积累,通过用户数据即可进行计算命中率,不需要花费较长的时间;并且不需要先将域名进行缓存即可判定缓存命中结果,避免了先将目标域名进行缓存从而造成缓存资源的浪费的情况。
需要说明的是,在本发明实施例中,与HTTP缓存相关的字段包括端口Port、返回码Code、请求方式Method、缓存机制Cache-control、超期时间Expires、请求发送时刻date、实体标签Etag字段和最后修改时间Last-modified这些字段,并根据上述字段依次来判断URL的缓存命中结果。
下面结合图3示出的URL级的命中率判断方法流程,详细说明本发明实施例基于与HTTP缓存相关的字段判断URL的缓存命中结果的过程:
获取与HTTP缓存相关的字段中Port字段的字段值;当Port字段的字段值为非80端口时,确定URL的缓存命中结果为不缓存;当Port字段的字段值为80端口时,基于与HTTP缓存相关的字段中返回码Code字段确定URL的缓存命中结果。
其中,URL的与HTTP缓存相关的字段中通常包括用户数据传输的端口信息,例如,虚拟端口。在互联网中,用户访问网站的数据中包括传输数据对应协议的端口,例如,与HTTP对应的通讯端口为80端口。缓存服务器在进行缓存设置时可以预先设置可以进行缓存的端口(互联网中通常为80端口),则只有数据传输的端口属于缓存服务器预先设置的端口时才能够缓存。所以当URL的与HTTP缓存相关的字段包括的端口属于可以缓存的端口时,URL对应内容才可以进行缓存,即判定缓存命中结果为可以缓存;当URL的与HTTP缓存相关的字段包括的端口不属于可以缓存的端口时,URL对应内容不可以进行缓存。通常HTTPrequest header中的端口Port字段用来携带端口信息,所以,当URL的与HTTP缓存相关的字段包括端口Port字段时,可以判断端口Port字段的字段值是否为80端口。如果为非80端口,则确定URL的缓存命中结果为不缓存;如果为80端口,则需要继续根据其他字段来确定URL的缓存命中结果,即基于与HTTP缓存相关的字段中返回码Code字段确定URL的缓存命中结果。
进一步的,基于与HTTP缓存相关的字段中返回码Code字段确定URL的缓存命中结果可以具体为:获取Code字段的字段值;当Code字段的字段值为304时,确定URL的缓存命中结果为缓存且命中;当Code字段的字段值为200时,基于与HTTP缓存相关的字段中请求方式Method字段确定URL的缓存命中结果。
其中,对于一些网站中访问率较高的网页等内容,网站等服务器在响应用户请求时,会直接在响应的信息中指示可以对可缓存URL对应内容进行存储,例如通过HTTPresponse header中的Code字段的字段值来指示,即服务器指示用户可以对可缓存URL对应内容在本地存储副本,这样用户在短时间内再次访问这些内容时,可以不去服务器获取,直接使用本地存储的内容,因此这些内容在缓存后是可以命中的。Code字段的字段值为304表示可以对可缓存URL对应内容进行本地存储,Code字段的字段值为200表示服务器已成功处理了请求。所以,如果Code字段的字段值为304,则确定URL的缓存命中结果为缓存且命中;如果Code字段的字段值为200,则需要继续根据其他字段来确定URL的缓存命中结果,即基于与HTTP缓存相关的字段中请求方式Method字段确定URL的缓存命中结果。
进一步的,基于与HTTP缓存相关的字段中请求方式Method字段确定URL的缓存命中结果可以具体为:获取Method字段的字段值;当Method字段的字段值为非GET时,确定URL的缓存命中结果为缓存不命中;当Method字段的字段值为GET时,基于与HTTP缓存相关的字段中缓存机制Cache-control字段确定URL的缓存命中结果。
其中,HTTP request header中的字段包括请求方式Method字段,Method字段的字段值包括GET、POST等多种,其中,GET表示可缓存URL的请求方式为从指定的资源请求数据。如果Method字段的字段值为非GET,则可以确定URL的缓存命中结果为缓存不命中;如果Method字段的字段值为GET时,则需要继续进行判断,即基于与HTTP缓存相关的字段中缓存机制Cache-control字段确定URL的缓存命中结果。
进一步的,基于与HTTP缓存相关的字段中缓存机制Cache-control字段确定URL的缓存命中结果的步骤具体包括:获取Cache-control字段的字段值;当Cache-control字段的字段值包括不缓存no-store时,确定URL的缓存命中结果为缓存不命中;当Method字段的字段值包括缓存时间max-age>0且不包括no-store时,确定URL的缓存命中结果为缓存且命中;当Method字段的字段值为除no-store和max-age>0之外的其他值时,基于与HTTP缓存相关的字段中超期时间Expires字段和请求发送时刻date字段确定URL的缓存命中结果。
其中,URL的缓存机制包括多种,例如,不进行缓存、缓存大于零的时间段、缓存等于零的时间段等等,可以通过字段Cache-control来确定URL的缓存机制。Cache-control的字段值包括max-age、s-maxage、no-cache、no-store等等。max-age表示设置缓存最大的有效时间,定义有效时间的大小,而不是确定的时间点,单位是秒;s-maxage类似于max-age,但只用于公享缓(e.g.proxy);no-cache表示响应不会被缓存,而是实时向服务器端请求资源;no-store表示在任何条件下响应都不会被缓存,并且不会被写入到客户端的磁盘里,这也是基于安全考虑的某些敏感的响应才会使用。所以,如果Cache-control的字段值中包括no-store,则说明无法在本地留存副本,即确定URL的缓存命中结果为缓存不命中;如果取值中不包含no-store,包含max-age且其取值大于0,则表明指定了内容缓存的时间,即确定URL的缓存命中结果为缓存且命中;如果Cache-control字段值为除no-store和max-age>0之外的其他值,则需要继续判断,基于与HTTP缓存相关的字段中超期时间Expires字段和请求发送时刻date字段确定URL的缓存命中结果。
例如,某个URL中Cache-control字段的字段值为max-age=604800,表示可在本地存储副本5184000秒(即60天),此时Cache-control字段的字段值为max-age>0,即此URL的缓存机制为缓存大于零的时间段时,判定此URL的缓存命中结果为缓存且命中。
进一步的,基于与HTTP缓存相关的字段中Expires字段和date字段确定URL的缓存命中结果的步骤可以具体包括:获取Expires字段和date字段的字段值;当Expires字段的字段值所表示的时间早于date字段的字段值所表示的时间时,确定URL的缓存命中结果为缓存不命中;当Expires字段的字段值所表示的时间早于date字段的字段值所表示的时间时,确定URL的缓存命中结果为缓存且命中;当无法获取Expires字段的字段值时,基于与HTTP缓存相关的字段中实体标签Etag字段和最后修改时间Last-modified字段确定URL的缓存命中结果。
其中,Expires字段表示URL对应内容的存在时间。Date头域表示请求消息发送的时间,时间的描述格式可以由rfc822定义。当expires≤date时,内容存在时间始终小于当前时间,说明内容始终不是最新的,也即无法命中;如果expires>date,则说明内容可以在本地留存(epxires-date)的时间长度,即缓存且命中;如果没有Expires字段,则需要继续判断。
例如,某个可缓存URL中Expires字段的字段值为Tue,06Sep 2016 02:02:37GMT,Date字段的字段值为Tue,06Sep 2016 02:02:38GMT,由此可以得出Epxires的字段值小于Date的字段值,即Expires中的时刻早于Date的时刻,判定此可缓存URL对应内容需要重新到可缓存URL对应网站获取。
进一步的,基于与HTTP缓存相关的字段中Etag字段和Last-modified字段确定URL的缓存命中结果的步骤包括:判断URL的与HTTP缓存相关的字段是否包括Etag字段和/或Last-modified字段;当URL的与HTTP缓存相关的字段包括Etag字段和/或Last-modified字段时,确定URL的缓存命中结果为缓存且命中;当URL的与HTTP缓存相关的字段不包括Etag字段和Last-modified字段时,确定URL的缓存命中结果为缓存不命中。
其中,当与HTTP缓存相关的字段至少存在Etag和Last-modified这两个字段之一时,指示了URL对应内容在本地存储后判断是否有更新,说明文件具备在本地存储的条件,即缓存且命中。所以,当URL的与HTTP缓存相关的字段包括Etag字段和/或Last-modified字段时,确定URL的缓存命中结果为缓存且命中;当URL的与HTTP缓存相关的字段不包括Etag字段和Last-modified字段时,确定URL的缓存命中结果为缓存不命中。
可以理解的是,在本发明实施例中,在步骤102之前,所述方法还包括:从用户的访问数据中获取域名;判断域名是否为需要缓存的域名;当域名是否为需要缓存的域名时,执行步骤从URL中分离与超文本传输协议HTTP缓存相关的字段。
需要说明的是,当需要对用户的访问数据判断是否需要缓存时,一般会同时获取域名和URL,然后首先对域名进行判断,判断域名是否为需要缓存的域名,当域名是否为需要缓存的域名时,在对URL进行判断,执行步骤从URL中分离与超文本传输协议HTTP缓存相关的字段。
可以理解的是,在本发明实施例中,还可以根据各域名中URL的缓存命中结果来计算缓存的命中率,具体可以执行为:统计属于相同域名的各URL中缓存命中结果为缓存且命中的URL个数;将属于缓存命中的URL个数占属于相同域名的各URL的总数的比例作为目标域名的命中率。
其中,通过步骤130的判断,已经得出每个URL的缓存命中结果,所以汇聚每个URL的缓存命中结果,可以统计出同一个域名中属于缓存且命中的URL个数,然后计算属于缓存且命中的URL个数占属于同一个域名中各URL的总数的比例,即可得出此域名的缓存命中率。
需要说明的是,在上述实施例中通过步骤130判断URL的缓存命中结果的过程中,每个URL可能不全部包括上述判断过程中涉及的字段,如果按照上述过程判断每个URL的缓存命中结果的过程,URL不包括上述判断过程中涉及的某个字段,则可以跳过此字段的判断过程,按照其他URL包括的字段进行判断。例如,假设某个URL的HTTPrequest header中的字段中不包括Method字段,无法判断此URL的请求方式,则可以跳过此字段的判断过程,即此时当Code字段的字段值为200时,基于与HTTP缓存相关的字段中缓存机制Cache-control字段确定URL的缓存命中结果。
本发明实施例实现了在对目标域名为进行缓存的情况下,预判目标域名加入缓存后的缓存命中率,解决了现有技术中后向分析方法中域名命中率计算周期长、风险高的问题。
图4示出了根据本发明实施例的域名缓存命中率的预判装置200的示意性框图。如图4所示,该装置200包括:
获取单元201,用于从用户的访问数据获取统一资源定位符URL;
分离单元202,用于从所述URL中分离与超文本传输协议HTTP缓存相关的字段;
确定单元203,用于基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果。
本发明实施例中从用户访问的数据中获取用户访问的URL,并基于从URL中分离出出的与HTTP缓存相关的字段来确定URL的缓存命中结果,从而根据缓存命中结果对URL是否缓存进行判断。如此,不需对样本进行积累,通过用户数据即可进行计算命中率,不需要花费较长的时间;并且不需要先将域名进行缓存即可判定缓存命中结果,避免了先将目标域名进行缓存从而造成缓存资源的浪费的情况。
可以理解的是,所述与HTTP缓存相关的字段包括HTTP请求头域request header中的字段和/或HTTP响应头域response header中的字段。
可以理解的是,所述缓存命中结果包括缓存且命中、缓存不命中或不缓存,其中,所述获取单元201还用于获取所述与HTTP缓存相关的字段中端口Port字段的字段值;
所述确定单元203还用于当所述Port字段的字段值为非80端口时,确定所述URL的缓存命中结果为所述不缓存;以及,用于当所述Port字段的字段值为80端口时,基于所述与HTTP缓存相关的字段中返回码Code字段确定所述URL的缓存命中结果。
可以理解的是,所述获取单元201还用于获取所述Code字段的字段值;
所述确定单元203还用于当所述Code字段的字段值为304时,确定所述URL的缓存命中结果为所述缓存且命中;以及,用于当所述Code字段的字段值为200时,基于所述与HTTP缓存相关的字段中请求方式Method字段确定所述URL的缓存命中结果。
可以理解的是,所述获取单元201还用于获取所述Method字段的字段值;
所述确定单元203还用于当所述Method字段的字段值为非GET时,确定所述URL的缓存命中结果为所述缓存不命中;以及,用于当所述Method字段的字段值为GET时,基于所述与HTTP缓存相关的字段中缓存机制Cache-control字段确定所述URL的缓存命中结果。
可以理解的是,所述获取单元201还用于获取所述Cache-control字段的字段值;
所述确定单元203还用于当所述Cache-control字段的字段值包括不缓存no-store时,确定所述URL的缓存命中结果为所述缓存不命中;以及,用于当所述Method字段的字段值包括缓存时间max-age>0且不包括no-store时,确定所述URL的缓存命中结果为所述缓存且命中;以及,用于当所述Method字段的字段值为除no-store和max-age>0之外的其他值时,基于所述与HTTP缓存相关的字段中超期时间Expires字段和请求发送时刻date字段确定所述URL的缓存命中结果。
可以理解的是,装置200还可以包括:
第一判断单元,用于判断所述URL的与HTTP缓存相关的字段是否包括所述Etag字段和/或所述Last-modified字段;
所述确定单元203还用于当所述URL的与HTTP缓存相关的字段包括所述Etag字段和/或所述Last-modified字段时,确定所述URL的缓存命中结果为所述缓存且命中;以及,用于当所述URL的与HTTP缓存相关的字段不包括所述Etag字段和所述Last-modified字段时,确定所述URL的缓存命中结果为所述缓存不命中。
可以理解的是,装置200还可以包括:
所述获取单元201还用于从所述用户的访问数据中获取域名;
第二判断单元,用于判断所述域名是否为需要缓存的域名;
所述分离单元202还用于当所述域名是否为需要缓存的域名时,执行所述步骤从所述URL中分离与超文本传输协议HTTP缓存相关的字段。
根据本发明实施例的域名缓存命中率的预判装置200可对应于根据本发明实施例的域名缓存命中率的预判方法中的执行主体,并且域名缓存命中率的预判装置200中的各个单元的上述和其它操作和/或功能分别为了实现图1中的各个方法的相应流程,为了简洁,在此不再赘述。
图5是根据本发明实施例的域名缓存命中率的预判设备300的示意性框图。如图5所示,设备300包括处理器301、存储器302和通信接口303,存储器302用于存储可执行的程序代码,处理器301通过读取存储器302中存储的可执行程序代码来运行与可执行程序代码对应的程序,通信接口303用于与外部设备通信,例如与终端、网站等进行通信,设备300还可以包括总线304,总线304用于连接处理器301、存储器302和通信接口303,使处理器301、存储器302和通信接口303通过总线304进行相互通信。
具体地,处理器301还用于执行一种域名缓存命中率的预判方法;其中,域名缓存命中率的预判方法包括:
从用户的访问数据获取统一资源定位符URL;
从所述URL中分离与超文本传输协议HTTP缓存相关的字段;
基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果。
根据本发明实施例的域名缓存命中率的预判设备300可对应于根据本发明实施例的域名缓存命中率的预判方法中的执行主体,并且域名缓存命中率的预判设备300中的上述和其它操作和/或功能分别为了实现图1中的各个方法的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (14)
1.一种域名缓存命中率的预判方法,其特征在于,所述方法包括:
从用户的访问数据获取域名下所有的统一资源定位符URL;
从所述URL中分离与超文本传输协议HTTP缓存相关的字段;
基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果;
在遍历各所述URL结束后,汇聚各所述URL的缓存命中结果;
根据所述缓存命中结果计算所述域名的缓存命中率;
所述与HTTP缓存相关的字段包括HTTP请求头域 request header中的字段和/或HTTP响应头域response header中的字段;
所述缓存命中结果包括缓存且命中、缓存不命中或不缓存,其中,所述基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果的步骤包括:
获取所述与HTTP缓存相关的字段中端口Port字段的字段值;
当所述Port字段的字段值为非80端口时,确定所述URL的缓存命中结果为不缓存;
当所述Port字段的字段值为80端口时,基于所述与HTTP缓存相关的字段中返回码Code字段确定所述URL的缓存命中结果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述与HTTP缓存相关的字段中返回码Code字段确定所述URL的缓存命中结果的步骤包括:
获取所述Code字段的字段值;
当所述Code字段的字段值为304时,确定所述URL的缓存命中结果为所述缓存且命中;
当所述Code字段的字段值为200时,基于所述与HTTP缓存相关的字段中请求方式Method字段确定所述URL的缓存命中结果。
3.根据权利要求2所述的方法,其特征在于,所述基于所述与HTTP缓存相关的字段中请求方式Method字段确定所述URL的缓存命中结果的步骤包括:
获取所述Method字段的字段值;
当所述Method字段的字段值为非GET时,确定所述URL的缓存命中结果为所述缓存不命中;
当所述Method字段的字段值为GET时,基于所述与HTTP缓存相关的字段中缓存机制Cache-control字段确定所述URL的缓存命中结果。
4.根据权利要求3所述的方法,其特征在于,所述基于所述与HTTP缓存相关的字段中缓存机制Cache-control字段确定所述URL的缓存命中结果的步骤包括:
获取所述Cache-control字段的字段值;
当所述Cache-control字段的字段值包括不缓存no-store时,确定所述URL的缓存命中结果为所述缓存不命中;
当所述Method字段的字段值包括缓存时间max-age﹥0且不包括no-store时,确定所述URL的缓存命中结果为所述缓存且命中;
当所述Method字段的字段值为除no-store和max-age﹥0之外的其他值时,基于所述与HTTP缓存相关的字段中超期时间Expires字段和请求发送时刻date字段确定所述URL的缓存命中结果。
5.根据权利要求4所述的方法,其特征在于,所述基于所述与HTTP缓存相关的字段中超期时间Expires字段和请求发送时刻date字段确定所述URL的缓存命中结果的步骤包括:
获取所述Expires字段和所述date字段的字段值;
当所述Expires字段的字段值所表示的时间早于所述date字段的字段值所表示的时间时,确定所述URL的缓存命中结果为所述缓存不命中;
当所述Expires字段的字段值所表示的时间不早于所述date字段的字段值所表示的时间时,确定所述URL的缓存命中结果为所述缓存且命中;
当无法获取所述Expires字段的字段值时,基于所述与HTTP缓存相关的字段中实体标签Etag字段和最后修改时间Last-modified字段确定所述URL的缓存命中结果。
6.根据权利要求5所述的方法,其特征在于,所述基于所述与HTTP缓存相关的字段中实体标签Etag字段和最后修改时间Last-modified字段确定所述URL的缓存命中结果的步骤包括:
判断所述URL的与HTTP缓存相关的字段是否包括所述Etag字段和/或所述Last-modified字段;
当所述URL的与HTTP缓存相关的字段包括所述Etag字段和/或所述Last-modified字段时,确定所述URL的缓存命中结果为所述缓存且命中;
当所述URL的与HTTP缓存相关的字段不包括所述Etag字段和所述Last-modified字段时,确定所述URL的缓存命中结果为所述缓存不命中。
7.根据权利要求1所述的方法,其特征在于,在所述从所述URL中分离与超文本传输协议HTTP缓存相关的字段的步骤之前,所述方法还包括:
从所述用户的访问数据中获取域名;
判断所述域名是否为需要缓存的域名;
当所述域名为需要缓存的域名时,执行所述步骤从所述URL中分离与超文本传输协议HTTP缓存相关的字段。
8.一种域名缓存命中率的预判装置,其特征在于,所述预判装置包括:
获取单元,用于从用户的访问数据获取域名下所有的统一资源定位符URL;
分离单元,用于从所述URL中分离与超文本传输协议HTTP缓存相关的字段;
确定单元,用于基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果;
汇聚单元,用于在遍历各所述URL结束后,汇聚各所述URL的缓存命中结果;
计算单元,用于根据所述缓存命中结果计算所述域名的缓存命中率;
所述与HTTP缓存相关的字段包括HTTP请求头域 request header中的字段和/或HTTP响应头域 response header中的字段;
所述缓存命中结果包括缓存且命中、缓存不命中或不缓存,其中,所述获取单元还用于获取所述与HTTP缓存相关的字段中端口Port字段的字段值;
所述确定单元还用于当所述Port字段的字段值为非80端口时,确定所述URL的缓存命中结果为所述不缓存;以及,用于当所述Port字段的字段值为80端口时,基于所述与HTTP缓存相关的字段中返回码Code字段确定所述URL的缓存命中结果。
9.根据权利要求8所述的装置,其特征在于,所述获取单元还用于获取所述Code字段的字段值;
所述确定单元还用于当所述Code字段的字段值为304时,确定所述URL的缓存命中结果为所述缓存且命中;以及,用于当所述Code字段的字段值为200时,基于所述与HTTP缓存相关的字段中请求方式Method字段确定所述URL的缓存命中结果。
10.根据权利要求9所述的装置,其特征在于,所述获取单元还用于获取所述Method字段的字段值;
所述确定单元还用于当所述Method字段的字段值为非GET时,确定所述URL的缓存命中结果为所述缓存不命中;以及,用于当所述Method字段的字段值为GET时,基于所述与HTTP缓存相关的字段中缓存机制Cache-control字段确定所述URL的缓存命中结果。
11.根据权利要求10所述的装置,其特征在于,所述获取单元还用于获取所述Cache-control字段的字段值;
所述确定单元还用于当所述Cache-control字段的字段值包括不缓存no-store时,确定所述URL的缓存命中结果为所述缓存不命中;以及,用于当所述Method字段的字段值包括缓存时间max-age﹥0且不包括no-store时,确定所述URL的缓存命中结果为所述缓存且命中;以及,用于当所述Method字段的字段值为除no-store和max-age﹥0之外的其他值时,基于所述与HTTP缓存相关的字段中超期时间Expires字段和请求发送时刻date字段确定所述URL的缓存命中结果。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第一判断单元,用于判断所述URL的与HTTP缓存相关的字段是否包括Etag字段和/或Last-modified字段;
所述确定单元还用于当所述URL的与HTTP缓存相关的字段包括所述Etag字段和/或所述Last-modified字段时,确定所述URL的缓存命中结果为所述缓存且命中;以及,用于当所述URL的与HTTP缓存相关的字段不包括所述Etag字段和所述Last-modified字段时,确定所述URL的缓存命中结果为所述缓存不命中。
13.根据权利要求8所述的装置,其特征在于,所述获取单元还用于从所述用户的访问数据中获取域名;
第二判断单元,用于判断所述域名是否为需要缓存的域名;
所述分离单元还用于当所述域名为需要缓存的域名时,从所述URL中分离与超文本传输协议HTTP缓存相关的字段。
14.一种域名缓存命中率的预判设备,其特征在于,所述预判设备包括:
存储器、处理器、通信接口和总线;
所述存储器、所述处理器和所述通信接口通过所述总线连接并完成相互间的通信;
所述存储器用于存储程序代码;
所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行一种域名缓存命中率的预判方法;其中,所述域名缓存命中率的预判方法包括:
从用户的访问数据获取域名下所有的统一资源定位符URL;
从所述URL中分离与超文本传输协议HTTP缓存相关的字段;
基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果;
在遍历各所述URL结束后,汇聚各所述URL的缓存命中结果;
根据所述缓存命中结果计算所述域名的缓存命中率;
所述与HTTP缓存相关的字段包括HTTP请求头域 request header中的字段和/或HTTP响应头域response header中的字段;
所述缓存命中结果包括缓存且命中、缓存不命中或不缓存,其中,所述基于所述与HTTP缓存相关的字段确定所述URL的缓存命中结果的步骤包括:
获取所述与HTTP缓存相关的字段中端口Port字段的字段值;
当所述Port字段的字段值为非80端口时,确定所述URL的缓存命中结果为不缓存;
当所述Port字段的字段值为80端口时,基于所述与HTTP缓存相关的字段中返回码Code字段确定所述URL的缓存命中结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611243260.7A CN108259198B (zh) | 2016-12-28 | 2016-12-28 | 一种域名缓存命中率的预判方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611243260.7A CN108259198B (zh) | 2016-12-28 | 2016-12-28 | 一种域名缓存命中率的预判方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108259198A CN108259198A (zh) | 2018-07-06 |
CN108259198B true CN108259198B (zh) | 2021-08-06 |
Family
ID=62719770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611243260.7A Active CN108259198B (zh) | 2016-12-28 | 2016-12-28 | 一种域名缓存命中率的预判方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108259198B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104528B (zh) * | 2018-10-29 | 2023-05-16 | 浙江宇视科技有限公司 | 图片获取方法、装置及客户端 |
CN110674169B (zh) * | 2019-08-30 | 2022-06-10 | 北京浪潮数据技术有限公司 | 一种网站数据库的保护方法及相关装置 |
CN110912769B (zh) * | 2019-11-12 | 2021-08-10 | 中移(杭州)信息技术有限公司 | Cdn缓存命中率统计方法、***、网络设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075570A (zh) * | 2010-12-31 | 2011-05-25 | 南京中兴特种软件有限责任公司 | 一种基于关键字的http报文缓存机制的实现方法 |
CN103685317A (zh) * | 2013-12-31 | 2014-03-26 | 山石网科通信技术有限公司 | 用于域名***的防护方法和装置 |
CN104021028A (zh) * | 2014-05-16 | 2014-09-03 | 深圳市深信服电子科技有限公司 | 虚拟机环境下的web缓存方法及装置 |
CN104615597A (zh) * | 2013-11-04 | 2015-05-13 | 腾讯科技(深圳)有限公司 | 浏览器中清除缓存文件的方法、装置和*** |
CN105302801A (zh) * | 2014-05-27 | 2016-02-03 | 腾讯科技(深圳)有限公司 | 一种资源缓存方法及装置 |
CN105930528A (zh) * | 2016-06-03 | 2016-09-07 | 腾讯科技(深圳)有限公司 | 一种网页缓存的方法及服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8452833B2 (en) * | 2008-05-13 | 2013-05-28 | International Business Machines Corporation | Cached message distribution via HTTP redirects |
-
2016
- 2016-12-28 CN CN201611243260.7A patent/CN108259198B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075570A (zh) * | 2010-12-31 | 2011-05-25 | 南京中兴特种软件有限责任公司 | 一种基于关键字的http报文缓存机制的实现方法 |
CN104615597A (zh) * | 2013-11-04 | 2015-05-13 | 腾讯科技(深圳)有限公司 | 浏览器中清除缓存文件的方法、装置和*** |
CN103685317A (zh) * | 2013-12-31 | 2014-03-26 | 山石网科通信技术有限公司 | 用于域名***的防护方法和装置 |
CN104021028A (zh) * | 2014-05-16 | 2014-09-03 | 深圳市深信服电子科技有限公司 | 虚拟机环境下的web缓存方法及装置 |
CN105302801A (zh) * | 2014-05-27 | 2016-02-03 | 腾讯科技(深圳)有限公司 | 一种资源缓存方法及装置 |
CN105930528A (zh) * | 2016-06-03 | 2016-09-07 | 腾讯科技(深圳)有限公司 | 一种网页缓存的方法及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN108259198A (zh) | 2018-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10812358B2 (en) | Performance-based content delivery | |
US10027739B1 (en) | Performance-based content delivery | |
US10003666B2 (en) | Key resource prefetching using front-end optimization (FEO) configuration | |
US10261938B1 (en) | Content preloading using predictive models | |
US8346885B2 (en) | Systems and methods thereto for acceleration of web pages access using next page optimization, caching and pre-fetching techniques | |
CN105930528B (zh) | 一种网页缓存的方法及服务器 | |
US7299300B2 (en) | System and method for dynamically selecting a level of compression for data to be transmitted | |
US9787791B2 (en) | Managing a data cache for a computer system | |
CN108259198B (zh) | 一种域名缓存命中率的预判方法、装置及设备 | |
WO2017185633A1 (zh) | Cdn服务器及其缓存数据的方法 | |
CN104615597B (zh) | 浏览器中清除缓存文件的方法、装置和*** | |
CN109586937B (zh) | 一种缓存***的运维方法、设备和存储介质 | |
CN110855786B (zh) | 针对网络数据请求的处理方法、设备及计算机存储介质 | |
WO2012119496A1 (zh) | 预读方法和装置 | |
US7222170B2 (en) | Tracking hits for network files using transmitted counter instructions | |
CA3150383A1 (en) | WEB ACCELERATION BY LEARNING | |
US7930479B2 (en) | System and method for caching and retrieving from cache transaction content elements | |
CN110825603A (zh) | 页面首次加载时间确定方法、装置、电子设备及存储介质 | |
CN109344349A (zh) | 一种数据缓存方法及装置、电子设备 | |
CN111756744B (zh) | H5用户的识别方法、装置、设备及存储介质 | |
US20010049719A1 (en) | Method and system for client-server communication | |
Doswell et al. | The effectiveness of cache coherence implemented on the web | |
CN110209980A (zh) | 基于教育平台的webapp离线可用方法及电子设备 | |
JP2005267435A (ja) | キャッシュ処理プログラムおよびキャッシュ処理装置 | |
Doswell et al. | Implemented on the Web |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |