用于高速缓存万维网内容的方法和系统技术方案

技术编号:3546797 阅读:307 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了方法、系统和计算机程序产品,其通过提供一种高级的高速缓存组件来允许动态门户页面的高速缓存,而不改变现存的高速缓存代理基础结构或将被使用的传输协议。该高级的高速缓存组件提供功能,其中将额外的动态页面特定高速缓存信息作为包括门户页面的响应的部分来提供。在门户中的每个组件都额外地提供动态组件特定高速缓存信息,该信息包括组件特定高速缓存范围值和组件特定高速缓存失效值。将这两个值用于计算动态页面特定高速缓存信息,结果产生是公共最小高速缓存范围和失效值。作为包括门户页面的响应的头部的部分来提供动态页面特定高速缓存信息。然后高速缓存评估动态页面特定高速缓存信息而不被改变。

【技术实现步骤摘要】
用于高速缓存万维网内容的方法、系统和计算机程序产品
本专利技术涉及用于高速缓存万维网内容的方法、系统和计算机程序产品,特别涉及为动态门户页面产生高速缓存信息,并且在现存的高速缓存代理基础结构中产生它们的高速缓存。
技术介绍
使用万维网的高速缓存已经有很长时间了。在下层的HTTP协议中定义了基本的标准,其允许万维网页面的高速缓存。这些协议主要侧重于静态页面所需的高速缓存。如果假设全是动态页面,则总是将它们作为由一个URL单独请求的不可分离的完整的页面。门户服务器应用程序(之后称为门户)已经引入了万维网页面内容的灵活性的新的方面。门户页面(见图1)包括多个部分,它们具有不同的状态并且具有针对它们各自内容的不同高速缓存需求。Portlet是在门户中运行的应用程序。这些应用程序的UI包括由门户提供的门户页面的子部分。基于它们内部的状态,这些Portlet根据请求动态地产生它们的标记(markup)片段。由布局应用程序(主题/皮肤)产生门户的外观和感觉。布局应用程序是动态应用程序,其可以根据它们的状态来控制外观和感觉。迄今对完整提供的门户页面还没有进行高速缓存。仅仅可以高速缓存所产生的页面的非常小的子集,因为已知不随时间而改变它们的内容。门户页面是高度动态的。由多个动态应用程序组件的等级结构和如在可以随时间改变的页面上的Portlet的组合的状态、在页面上的Portlet的状态、可以随时间改变的这些Portlet的内容、以及依照当前配置和当前状态的最可能导航元素,来产生它们页面的内容。Portlet是有状态的应用程序而且根据每个请求提供它们的标记。不仅标记自身是动态的,而且所提供的标记的寿命也是在Portlet的执行时动态地计算的。标记片段的所期望寿命依赖于Portlet的当前状态。门户页面的高度动态特性使得它们不可以高速缓存。-->作为缓解措施,依照每个独立的片段的失效时间,今天的一些门户产品支持单个页面片段的高速缓存。对进来的请求,将这些片段汇集从而制成完整的门户页面。由门户自己来进行这个工作,所以对门户页面的每个请求都需要通过网络的全部路线到达起始服务器。今天还没有技术能够利用高速缓存机制来允许高度动态的门户页面的高速缓存。本专利技术的目的是提供方法、系统和计算机程序产品,其能够在不改变现存的高速缓存基础结构或将使用的传输协议的情况下,允许动态门户页面的高速缓存。
技术实现思路
本专利技术提供一种方法、系统和计算机程序产品,其能够在不改变现存的高速缓存代理基础结构或将使用的传输协议的情况下,通过提供高级的高速缓存组件,允许动态门户页面的高速缓存。该高级的高速缓存组件提供功能,其中提供额外的动态页面特定高速缓存信息作为包括门户页面的响应的部分。在门户中每个组件都额外地提供动态组件特定高速缓存信息,该门户动态地把将被汇集的页面片段提供给门户页面,该动态组件特定高速缓存信息包括组件特定高速缓存范围值和组件特定高速缓存失效值。使用所有的这些单一组件特定高速缓存范围和高速缓存失效值,来计算动态页面特定高速缓存信息,结果是产生将被汇集的门户页面的公共最小高速缓存范围和公共最小高速缓存失效值。该动态页面特定高速缓存信息确保正确地选择从组件提供来的最小高速缓存范围和不超过任何组件特定高速缓存失效值的最小高速缓存失效。提供动态页面特定高速缓存信息,作为包括门户页面的响应的头部的部分。然后高速缓存评估没有变动的动态页面特定高速缓存信息。附图说明在下面的详细文字说明中本专利技术的上面及其他的目的、特点和优点将变得非常明显。在所附权利要求中阐明了本专利技术的新颖特点。当结合附图阅读时,参照下面说明性实施例的详细描述,可以最好地理解本专利技术自身、其优选使用模式、-->进一步的目的及其优点,其中:图1示出了典型的门户页面;图2示出了将被本专利技术使用的现有技术的代理高速缓存基础结构在不改变时的情况;图3A示出了在现存的门户中本专利技术的高级高速缓存组件的基本实现;图3B示出了本专利技术的高速缓存机制,用于为门户页面计算高速缓存范围和高速缓存失效;图3C示出了根据本专利技术的高速缓存信息的静态配置;和图4示出了计算总高速缓存信息所需的数据的概观图。具体实施方式参照图2,其示出了本专利技术使用的现有技术的“代理高速缓存基础结构”在不改变时的情况。当说到高速缓存时,HTTP1.1规范(RFC 2616)使用术语“共享高速缓存”和“非共享高速缓存”。在那个专利申请中将两种类型的高速缓存都称为高速缓存。它们位于请求起始进程之外,在大多数情况下完全位于起始服务器机器之外。起始服务器可以使用HTTP协议(使用头部变量),来将当前交付的信息(如网页、门户页面或图像)的所期望寿命传送到其他组件,这些组件参加这个通讯流。由高速缓存来评估作为HPPT响应头部而提供的元数据,从而允许起始服务器在时间间隔进行控制,在该时间间隔中高速缓存将假设所接收的内容还是有效的。HTTP规范提供了关于协议使用的细节以便允许起始服务器将所交付的内容的有效性发送给高速缓存。高速缓存评估这个信息,并且相应地对相同的来源的随后请求的进程的处理进行操作。HTTP协议没有为起始服务器提供方法,以通过HTTP请求和响应来主动地使特定条目无效。唯一的无效机制是失效超时,并且其可以是管理行为。HTTP头部相关HTTP 1.1头部是(该头部对于页面请求的内容高速缓存特别关注):对于高速缓存范围:cache-control:public,cache-control:private,-->cache-control:no-cache对于高速缓存失效:cache-control:max-age delta-seconds对于客户范围(变化头部):user-agentaccept-languageother-configuration-header-fields在这里列出的这些HTTP头部是为了使读者容易地在HTTP1.1规范中查找关于这些特性的更多信息。[cache-control:public]指示响应可以用任何高速缓存进行高速缓存,即使其通常是不可高速缓存的或仅仅在非共享高速缓存内是可高速缓存的,也如此。[cache-control:private]指示所有或部分响应消息是针对单一用户的,并且必须不由共享高速缓存进行高速缓存。这允许起始服务器声明:响应的特定部分是针对仅仅一个用户,并且对其他用户的请求不是有效响应。专用(非共享)高速缓存可以对该响应进行高速缓存。如果no-cache指示没有指定field-name,则在没有与起始服务器成功地进行重新生效的情况下,高速缓存必须不使用该响应来满足随后的请求。这允许起始服务器防止由已经被配置用于将过时的响应返回给客户请求的高速缓存进行的高速缓存。当在高速缓存响应中出现max-age cache-control指示时,如果响应的当前寿命比在对那个来源有新请求时给出的寿命值大(以秒计),则所述响应是过时的。有关响应的max-age指示暗示了除非还出现一些其他更具有限制性的高速缓存指示,否则该响应是可以进行高速缓存的(即,“public”)。服务器应该使用vary-header-field来通知高速缓存:使用了什么样的request-header-fields来在可高速缓存的响应的多本文档来自技高网
...

【技术保护点】
一种为门户中的动态门户页面动态地产生高速缓存信息的方法,其中每个门户包括门户汇集组件(50),该组件(50)接收用户请求(90)、提供用户请求给单一组件(80)、接收从所述组件来的以门户页面片段形式的响应、并且汇集所述门户片段来制成完整的门户网页,该方法包括步骤:结合每个门户页面片段,动态地产生组件特定高速缓存信息(81-84),其中所述组件特定高速缓存信息至少包括组件特定高速缓存范围值和组件特定高速缓存失效值;从门户页面片段提取所述组件特定动态高速缓存信息; 计算动态页面特定高速缓存信息(90),其中所述动态页面特定高速缓存信息包括公共最小高速缓存范围和公共最小高速缓存失效值;和将所述动态页面特定高速缓存信息插入到所述门户页面,该门户页面将被汇集为完整的门户页面。

【技术特征摘要】
EP 2004-10-12 04104995.81、一种为门户中的动态门户页面动态地产生高速缓存信息的方法,其中每个门户包括门户汇集组件(50),该组件(50)接收用户请求(90)、提供用户请求给单一组件(80)、接收从所述组件来的以门户页面片段形式的响应、并且汇集所述门户片段来制成完整的门户网页,该方法包括步骤:结合每个门户页面片段,动态地产生组件特定高速缓存信息(81-84),其中所述组件特定高速缓存信息至少包括组件特定高速缓存范围值和组件特定高速缓存失效值;从门户页面片段提取所述组件特定动态高速缓存信息;计算动态页面特定高速缓存信息(90),其中所述动态页面特定高速缓存信息包括公共最小高速缓存范围和公共最小高速缓存失效值;和将所述动态页面特定高速缓存信息插入到所述门户页面,该门户页面将被汇集为完整的门户页面。2、根据权利要求1所述的方法,其中所述组件特定高速缓存信息是在运行时产生的。3、根据权利要求1所述的方法,还包括步骤:如果没有将组件特定高速缓存信息与所述门户页面片段一起提供,则使用组件特定默认高速缓存值。4、根据权利要求1所述的方法,其中将所述动态页面特定高速缓存信息(90)插入到响应的头部,该响应包括所述完整的门户页面。5、根据权利要求1所述的方法,其中通过确定门户页面是专用、公共或不高速缓存的来计算所述公共最小高速缓存范围。6、根据权利要求1所述的方法,其中通过确定最低的组件特定动态失效值来计算所述公共最小失效值。7、根据权利要求1所述的方法,其中在用于计算所述公共最小失效时间的所述方法步骤之后,进行用于计算所述公共最小高速缓存范围的所述方法步骤,并且对于门户页面如果所述公共最小失效时间的结果为“0”,则不进行所述公共最小高速缓存范围的计算。8、根据权利要求1所述的方法,其中通过使用HTTP协议将所述门户页面提供给高速缓存。9、一种门户,包括:门户汇集组件(50),用于调用产生门户片段的组件、从所述组件接收所述门户片段、并且将所述门户片段汇集到完整的门户页面中;组件(40),用于提供动态门户页面片段;其特征在于:高级的高速缓存组件(60),用于接收所述门户片段以及它们的组件特定高速缓存信息(81-84),该组件特定高速缓存信息(81-84)是对于每个门户片段动态地产生的;用于基于所述组...

【专利技术属性】
技术研发人员:雷纳齐尔宗卡斯滕勒斯蒂芬利施托马斯谢克
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1