一种缓存更新方法和缓存更新装置的制作方法

文档序号:6602817阅读:162来源:国知局
专利名称:一种缓存更新方法和缓存更新装置的制作方法
技术领域
本发明涉及缓存技术,更具体地说,涉及一种缓存更新方法和缓存更新装置。
背景技术
浏览器缓存技术的出现,大大提高了互联网访问速度。例如,当用户在浏览器中执行“前进”或“后退”等操作时,实际上就是在利用缓存技术来调取已经访问过的网页。由于这些已经访问过的网页已经存储在本地或者缓存服务器上,因此浏览器可以很快的获取继而展示给用户,这样一来便可提供一种快速访问的用户体验。一般而言,浏览器缓存的存储容量是极为有限的。因此,当过期网页过多占据缓存空间时,必然导致近期经常访问的网页得不到缓存,由此导致缓存失效,降低访问速度。因此,需要一种缓存更新方法,可及时有效的对缓存进行更新。现有的缓存更新方法仅仅是在缓存不足时,按照已缓存网页的缓存时间来清理缓存空间,以便对新网页进行缓存。不难看出,这种缓存方法十分被动,效率不高,在网络访问频繁的时候,会因过多的执行缓存更新操作而降低系统整体性能。因此,需要一种缓存更新方案,可以有效克服现有缓存技术中存在的上述缺陷。

发明内容
本发明要解决的技术问题在于,针对现有缓存技术效率不高且有可能降低系统整体性能的缺陷,提供一种缓存更新方法和缓存更新装置。本发明解决其技术问题所采用的技术方案是一种缓存更新方法,用于对浏览器缓存进行更新,所述浏览器缓存包括本地缓存和服务器缓存,所述方法包括本地缓存更新步骤,包括在接收到浏览器发出的网页访问请求时,提取请求访问的网页的地址;依据该地址在本地缓存中查找对应的网页,并在找到对应的网页时,读取该网页并返回;依据该地址在服务器缓存中查找对应的网页,并在判定从服务器缓存中找到的网页与在本地缓存中找到的网页不同时,依据从服务器缓存中找到的网页对在本地缓存中找到的网页进行更新,并返回更新后的网页;服务器缓存更新步骤,包括对于在服务器缓存中存储的每一网页基于该网页的更新频度所对应的更新周期定期检测是否需要对该网页进行更新, 在判定需要对该网页进行更新时,更新该网页并增加该网页的更新频度,在判定不需要对该网页进行更新时,降低该网页的更新频度。优选的,所述本地缓存更新步骤还包括,对于本地缓存中存储的每一网页,定期执行更新操作,包括基于该网页的地址在服务器缓存中查找对应的网页,在判定找到的网页与该地址在本地缓存中对应的网页不同时,依据在服务器缓存中找到的网页来更新本地缓存中对应的网页。优选的,所述本地缓存更新步骤还包括在依据所述请求访问的网页的地址在本地缓存和服务器缓存中均未找到对应的网页时,依据该地址从该网页所属站点获取该网页并存储到服务器缓存和本地缓存中。优选的,所述将该网页存储到服务器缓存中还包括,依据默认更新频度来设置该网页的更新频度。优选的,所述本地缓存更新步骤还包括在依据所述请求访问的网页的地址在本地缓存中未找到对应的网页但在服务器缓存中找到对应的网页时,将服务器缓存中对应的网页存储到本地缓存中并返回该网页。一种缓存更新装置,用于对浏览器的浏览器缓存进行更新,所述浏览器缓存包括本地缓存和服务器缓存,所述装置包括本地缓存更新模块,用于在接收到浏览器发出的网页访问请求时,提取请求访问的网页的地址;依据该地址在本地缓存中查找对应的网页,并在找到对应的网页时,读取该网页并返回;依据该地址在服务器缓存中查找对应的网页,并在判定从服务器缓存中找到的网页与在本地缓存中找到的网页不同时,依据从服务器缓存中找到的网页对在本地缓存中找到的网页进行更新,并返回更新后的网页;服务器缓存更新模块,用于对于在服务器缓存中存储的每一网页基于该网页的更新频度所对应的更新周期定期检测是否需要对该网页进行更新, 在判定需要对该网页进行更新时,更新该网页并增加该网页的更新频度,在判定不需要对该网页进行更新时,降低该网页的更新频度。优选的,所述本地缓存更新模块还用于,对于本地缓存中存储的每一网页,定期执行更新操作,包括基于该网页的地址在服务器缓存中查找对应的网页,在判定找到的网页与该地址在本地缓存中对应的网页不同时,依据在服务器缓存中找到的网页来更新本地缓存中对应的网页。优选的,所述本地缓存更新模块还用于在依据所述请求访问的网页的地址在本地缓存和服务器缓存中均未找到对应的网页时,依据该地址从该网页所属站点获取该网页并存储到服务器缓存和本地缓存中。优选的,在将该网页存储到服务器缓存中时,所述服务器缓存更新模块用于依据默认更新频度来设置该网页的更新频度。优选的,所述本地缓存更新模块还用于在依据所述请求访问的网页的地址在本地缓存中未找到对应的网页但在服务器缓存中找到对应的网页时,将服务器缓存中对应的网页存储到本地缓存中并返回该网页。实施本发明的技术方案,具有以下有益效果本发明提供的技术方案既可对本地缓存进行更新,也可对服务器缓存进行更新,且更新过程既包括主动更新也包括被动更新, 从而可有效提高更新效率,还可大大降低更新过程对系统性能的整体影响。此外,本发明提供的技术方案易于实现,适于推广。


下面将结合附图及实施例对本发明作进一步说明,附图中图1是依据本发明一较佳实施例的本地缓存更新方法的示范性流程图;图2是依据本发明一较佳实施例的服务器缓存更新方法的示范性流程图;图3是依据本发明一较佳实施例的缓存更新装置的逻辑结构示意图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明提供了一种缓存更新方法和一种缓存更新装置,既可对本地缓存进行更新,也可对服务器缓存进行更新,且更新过程既包括主动更新也包括被动更新,从而可有效提高更新效率,还可大大降低更新过程对系统性能的整体影响。此外,本发明提供的技术方案易于实现,适于推广。下面就结合附图和具体实施例来对本发明提供的技术方案进行详细的描述。本发明提供了一种缓存更新方法,用于对浏览器缓存进行更新。其中,浏览器缓存包括本地缓存和服务器缓存。浏览器发出网页访问请求后,由服务器获取请求访问的网页并对该网页进行缓存以及将该网页发往浏览器。浏览器也会对该网页进行缓存,即将该网页存储于本地缓存之中。在本发明中,本地缓存是指在移动通信终端中为浏览器设置的缓存,其相对于在服务器上为浏览器设置的缓存(即服务器缓存)。在更新过程中,本发明提供的缓存更新方法包括本地缓存更新步骤和服务器缓存更新步骤,下面就结合附图和具体实施例来对上述两类更新步骤进行详细的描述。图1是依据本发明一较佳实施例的本地缓存更新方法100的示范性流程图。如图 1所示,方法100开始于步骤102。随后,在下一步骤104,在接收到浏览器发出的网页访问请求时,提取请求访问的网页的地址;随后,在下一步骤106,依据该地址在本地缓存中查找对应的网页,并在找到对应的网页时,读取该网页并返回,以通过浏览器显示找到的网页;在具体实现过程中,若在本地缓存中未找到对应的网页,则步骤106还包括在服务器缓存中查找对应的网页,若找到该网页,则在本地缓存中对该网页进行缓存,并返回该网页以通过浏览器显示找到的网页。若在服务器缓存中也未能找到对应的网页,则步骤106 还包括通过服务器前往上述网页地址所对应的站点获取该网页并依次缓存在服务器缓存和本地缓存中,然后返回该网页以通过浏览器显示找到的网页。随后,在下一步骤108,依据该地址在服务器缓存中查找对应的网页;在具体实现过程中,若在服务器缓存中未找到对应的网页,说明服务器缓存已经通过淘汰策略将该网页淘汰出缓存,此时浏览器缓存中的网页必然已经过期或者失效,所以步骤108还包括通过服务器前往上述网页地址所对应的站点获取该网页并缓存在服务器缓存中,以及使用该网页对本地缓存中的对应网页进行更新,然后返回该网页以通过浏览器显示更新后的网页。随后,在下一步骤110,判断从服务器缓存中找到的网页与在本地缓存中找到的网页是否相同,若是,则转到步骤114,否则转到步骤112 ;在具体实现过程中,服务器缓存中的网页必然比本地缓存中的网页更新,因此若二者不同,说明本地缓存中的网页已经过期或者失效,因此应转到步骤112进行更新处理。如上文所述,若在步骤110判定从服务器缓存中找到的网页与在本地缓存中找到的网页不同,则转到步骤112,依据从服务器缓存中找到的网页对在本地缓存中找到的网页进行更新,并返回更新后的网页,以刷新浏览器从而显示更新的网页;最后,方法100结束于步骤114。在具体实现过程中,在比较网页是否相同(例如但不限于本地缓存和服务器缓存中的网页是否相同)时,可通过比较网页的存储或更新时间来进行。方法100描述的是对本地缓存的被动更新,即仅在客户端浏览器发出网页访问请求时才对缓存进行更新。如果被缓存的数据不怎么变化,被动更新的效率还不错,一旦被缓存的数据经常发生变化,利用上述缓存方法比直接进行数据访问的时间开销还要多。在具体实现过程中,方法100还包括主动更新的步骤,即对于本地缓存中存储的每一网页,定期执行更新操作,包括基于该网页的地址在服务器缓存中查找对应的网页,在判定找到的网页与该地址在本地缓存中对应的网页不同时,依据在服务器缓存中找到的网页来更新本地缓存中对应的网页。上述主动更新步骤定期执行,从而保证可定期对本地缓存进行更新。在具体实现过程中,由于本地缓存的存储容量有限,只能缓存有限容量(例如 10M)或者有限数目的网页数据(例如10个网页),因此可优先缓存浏览器主页、浏览器导航页面等,其次缓存访问频率高的页面。图2是依据本发明一较佳实施例的服务器缓存更新方法200的示范性流程图。方法200针对服务器缓存中存储的每一网页进行操作,基于该网页的更新频度所对应的更新周期定期检测是否需要对该网页进行更新,具体的检查和更新操作如图2所示。如图2所示,方法200开始于步骤102。随后,在步骤204,依据网页地址前往对应的站点获取该地址对应的网页;随后,在下一步骤206,判断缓存的网页与获取的网页是否相同,若是,则转到步骤 210 ;若否,则转到步骤208 ;如上文所述,若在步骤206判定缓存的网页与获取的网页不同,则说明需要对服务器缓存中的网页进行更新,因此转到步骤208,使用获取的网页对缓存的网页进行更新, 随后方法200转到步骤210 ;在具体实现过程中,步骤208中还包括在对缓存的网页进行更新后,增加该网页的更新频度。更新频度代表网页的更新频繁程度。在实际生活中,一些网页的更新频繁程度较高,因此需要经常对该类网页进行更新。另一方面,另外一些网页的更新频繁程度较低,因此无需经常对该类网页进行更新。更新频繁程度较高的网页包括例如但不限于新闻时事类网页,更新频繁程度较低的网页包括例如但不限于公示国家法定假日类的公示网页。设定更新频度的目的在于设置对应网页的更新周期。更新频度越高,越需要对对应的网页进行频繁的更新,因此其更新周期应当设定为较短的时间。反之,更新频度越低,对应的网页越不需要频繁更新,因此可将其更新周期设置为较长的时间。通过设置更新频度,可以为不同的网页设置不同的更新周期,从而优化系统性能。当在步骤206判定缓存的网页与获取的网页不同时,说明站点已经对网页进行了更新,由此说明该网页的更新频度高于为其预设的更新频度,因此需要增加其更新频度。反之,若在步骤206判定缓存的网页与获取的网页相同,则说明站点未对网页进行更新,由此说明该网页的更新频度低于为其预设的更新频度,因此需要降低其更新频度。特别的,对于新近缓存到服务器缓存中的网页(此前未曾被服务器缓存,或者已经因过期或失效而从服务器中移除),可以为其设置一默认更新频度。如上文所述,若在步骤206判定缓存的网页与获取的网页相同,则说明不需要对缓存的网页进行更新,因此转到步骤210,降低该网页的更新频度。然后,方法200转到步骤 212。在具体实现过程中,可根据更新频度来将网站或网页划分为多个类别,例如按照更新频度由高到低的顺序划分为A、B、C、D、E、F六个类型。A类网页更新非常频繁,一般为热门门户网站,对热点事件或者体育赛事进行滚动报到,网页数量不是很多,但是访问频率非常高,其更新周期可以设置为例如但不限于3分钟;B类网页更新很频繁,一般为热门门户网站的新闻类频道,网页数量不会太多,但是访问频率很高,其更新周期可以设置为例如但不限于5分钟;C类网页更新相对频繁,一般为热门门户网站,网页数量较多,访问频率较高,其更新周期可以设置为例如但不限于30分钟;D类网页的更新不是很频繁,其更新周期可以设置为例如但不限于2个小时;E类网页的更新非常少,网页的更新周期可以设置为例如但不限于4个小时;F类网页极少更新,其更新周期可以设置为例如但不限于M个小时。最后,方法200结束于步骤212。在实际生活中,网站按照主体性质不同分为政府网站、企业网站、商业网站、教育科研机构网站、个人网站、其它非盈利机构网站以及其它类型等。调查结果显示,企业网站的比例最大,占整个网站总体的70. 9% (如联想等),其次为商业网站,占8. 2% (如新浪、 搜狐等),第三是个人网站,占6.5%,随后依次为教育科研机构网站占5. 1%,其它非盈利机构网站占5.0%,政府网站占3.2%,其它类型占1. 1%。除了少数网站内容相对固定,绝大多数网站内容更新较频繁。通过对更新频度不同的网页设置有差别的更新周期,一方面合理分流服务器后台更新缓存的工作量,提高更新缓存的实时性及效率,另一方面针对各种不同更新频度的网页,在缓存失效前都得到及时的更新,大大提高有效缓存的命中率,从而提高网页访问速度。本发明还提供了一种缓存更新装置,下面就结合图3对其进行详细描述。图3是依据本发明一较佳实施例的缓存更新装置300的逻辑结构示意图。本发明提供的缓存更新装置,用于对浏览器的浏览器缓存进行更新,如图3所示,该缓存更新装置包括本地缓存更新模块302和服务器缓存更新模块304。本地缓存更新模块302,用于
在接收到浏览器发出的网页访问请求时,提取请求访问的网页的地址;依据该地址在本地缓存中查找对应的网页,并在找到对应的网页时,读取该网页并返回;依据该地址在服务器缓存中查找对应的网页,并在判定从服务器缓存中找到的网页与在本地缓存中找到的网页不同时,依据从服务器缓存中找到的网页对在本地缓存中找到的网页进行更新,并返回更新后的网页;在具体实现过程中,本地缓存更新模块302还用于,对于本地缓存中存储的每一网页,定期执行更新操作,包括基于该网页的地址在服务器缓存中查找对应的网页,在判定找到的网页与该地址在本地缓存中对应的网页不同时,依据在服务器缓存中找到的网页来更新本地缓存中对应的网页。在具体实现过程中,本地缓存更新模块302还用于在依据所述请求访问的网页的地址在本地缓存和服务器缓存中均未找到对应的网页时,依据该地址从该网页所属站点获取该网页并存储到服务器缓存和本地缓存中。在具体实现过程中,本地缓存更新模块302所执行的操作与图1中的本地缓存更新方法相对应。服务器缓存更新模块304用于对于在服务器缓存中存储的每一网页基于该网页的更新频度所对应的更新周期定期检测是否需要对该网页进行更新, 在判定需要对该网页进行更新时,更新该网页并增加该网页的更新频度,在判定不需要对该网页进行更新时,降低该网页的更新频度。在具体实现过程中,服务器缓存更新模块304所执行的操作与图2中的服务器缓存更新方法相对应。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种缓存更新方法,用于对浏览器缓存进行更新,其特征在于,所述浏览器缓存包括本地缓存和服务器缓存,所述方法包括本地缓存更新步骤,包括在接收到浏览器发出的网页访问请求时,提取请求访问的网页的地址; 依据该地址在本地缓存中查找对应的网页,并在找到对应的网页时,读取该网页并返回;依据该地址在服务器缓存中查找对应的网页,并在判定从服务器缓存中找到的网页与在本地缓存中找到的网页不同时,依据从服务器缓存中找到的网页对在本地缓存中找到的网页进行更新,并返回更新后的网页;服务器缓存更新步骤,包括对于在服务器缓存中存储的每一网页基于该网页的更新频度所对应的更新周期定期检测是否需要对该网页进行更新,在判定需要对该网页进行更新时,更新该网页并增加该网页的更新频度,在判定不需要对该网页进行更新时,降低该网页的更新频度。
2.根据权利要求1所述的缓存更新方法,其特征在于,所述本地缓存更新步骤还包括, 对于本地缓存中存储的每一网页,定期执行更新操作,包括基于该网页的地址在服务器缓存中查找对应的网页,在判定找到的网页与该地址在本地缓存中对应的网页不同时,依据在服务器缓存中找到的网页来更新本地缓存中对应的网页。
3.根据权利要求2所述的缓存更新方法,其特征在于,所述本地缓存更新步骤还包括 在依据所述请求访问的网页的地址在本地缓存和服务器缓存中均未找到对应的网页时,依据该地址从该网页所属站点获取该网页并存储到服务器缓存和本地缓存中。
4.根据权利要求3所述的缓存更新方法,其特征在于,所述将该网页存储到服务器缓存中还包括,依据默认更新频度来设置该网页的更新频度。
5.根据权利要求2所述的缓存更新方法,其特征在于,所述本地缓存更新步骤还包括 在依据所述请求访问的网页的地址在本地缓存中未找到对应的网页但在服务器缓存中找到对应的网页时,将服务器缓存中对应的网页存储到本地缓存中并返回该网页。
6.一种缓存更新装置,用于对浏览器的浏览器缓存进行更新,其特征在于,所述浏览器缓存包括本地缓存和服务器缓存,所述装置包括本地缓存更新模块,用于在接收到浏览器发出的网页访问请求时,提取请求访问的网页的地址; 依据该地址在本地缓存中查找对应的网页,并在找到对应的网页时,读取该网页并返回;依据该地址在服务器缓存中查找对应的网页,并在判定从服务器缓存中找到的网页与在本地缓存中找到的网页不同时,依据从服务器缓存中找到的网页对在本地缓存中找到的网页进行更新,并返回更新后的网页;服务器缓存更新模块,用于对于在服务器缓存中存储的每一网页 基于该网页的更新频度所对应的更新周期定期检测是否需要对该网页进行更新,在判定需要对该网页进行更新时,更新该网页并增加该网页的更新频度,在判定不需要对该网页进行更新时,降低该网页的更新频度。
7.根据权利要求6所述的缓存更新装置,其特征在于,所述本地缓存更新模块还用于, 对于本地缓存中存储的每一网页,定期执行更新操作,包括基于该网页的地址在服务器缓存中查找对应的网页,在判定找到的网页与该地址在本地缓存中对应的网页不同时,依据在服务器缓存中找到的网页来更新本地缓存中对应的网页。
8.根据权利要求7所述的缓存更新装置,其特征在于,所述本地缓存更新模块还用于 在依据所述请求访问的网页的地址在本地缓存和服务器缓存中均未找到对应的网页时,依据该地址从该网页所属站点获取该网页并存储到服务器缓存和本地缓存中。
9.根据权利要求8所述的缓存更新装置,其特征在于,在将该网页存储到服务器缓存中时,所述服务器缓存更新模块用于依据默认更新频度来设置该网页的更新频度。
10.根据权利要求7所述的缓存更新装置,其特征在于,所述本地缓存更新模块还用于在依据所述请求访问的网页的地址在本地缓存中未找到对应的网页但在服务器缓存中找到对应的网页时,将服务器缓存中对应的网页存储到本地缓存中并返回该网页。
全文摘要
本发明涉及缓存技术,针对现有缓存技术效率不高且有可能降低系统整体性能的缺陷,提供一种缓存更新方法和缓存更新装置。缓存更新方法包括在接收到网页访问请求时,提取网页的地址;依据该地址在本地缓存中查找网页,并读取该网页并返回;对于在服务器缓存中存储的每一网页基于该网页的更新频度所对应的更新周期定期检测是否需要对该网页进行更新,在判定需要对该网页进行更新时,更新该网页并增加该网页的更新频度。本发明还提供了一种缓存更新装置。本发明可对本地和服务器缓存进行更新,且更新过程包括主动和被动更新,可提高更新效率,以及降低更新过程对系统性能的整体影响。此外,本发明提供的技术方案易于实现,适于推广。
文档编号G06F17/30GK102253941SQ201010178820
公开日2011年11月23日 申请日期2010年5月21日 优先权日2010年5月21日
发明者于宝峰, 吴疆, 杨木祥, 章国良, 肖家丽 申请人:卓望数码技术(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1