CN101211317A - 用于预览新的可高速缓存的内容的方法和系统 - Google Patents

用于预览新的可高速缓存的内容的方法和系统 Download PDF

Info

Publication number
CN101211317A
CN101211317A CNA2007101542676A CN200710154267A CN101211317A CN 101211317 A CN101211317 A CN 101211317A CN A2007101542676 A CNA2007101542676 A CN A2007101542676A CN 200710154267 A CN200710154267 A CN 200710154267A CN 101211317 A CN101211317 A CN 101211317A
Authority
CN
China
Prior art keywords
cache
content
new
preview
skipping
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
CNA2007101542676A
Other languages
English (en)
Other versions
CN101211317B (zh
Inventor
安德鲁·艾弗里
马德胡·K·切图帕拉姆比尔
尼尔马拉·考达里
达尔·A.·克里克
周静之
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101211317A publication Critical patent/CN101211317A/zh
Application granted granted Critical
Publication of CN101211317B publication Critical patent/CN101211317B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种预览新的可高速缓存的内容的方法包括在替代高速缓存中的任何现有的内容之前或高速缓存新的内容之前将跳过高速缓存单元添加到预览新的可高速缓存的内容的请求。该方法还包括响应于所述请求包括跳过高速缓存单元并且在高速缓存策略中定义了所述跳过高速缓存单元,绕过对所述请求的高速缓存处理。

Description

用于预览新的可高速缓存的内容的方法和系统
技术领域
本发明涉及将新的可高速缓存的内容添加到作业系统,更具体地,涉及一种利用预定的请求上下文来预览可高速缓存的内容的方法和系统。
背景技术
对于在诸如电子商务系统或其它与商业有关的系统等作业系统上操作的应用来说,将新的可高速缓存的内容添加到作业系统是常见的。一般情况下,新的可高速缓存的内容替代现有的内容。为了避免数据完整性问题和其它处理问题,直到新的内容已被预览并验证或核实后,高速缓存器才会处理该新的内容。
有许多机制用来预览新的内容。一种解决方案是在发出预览请求前删除用于页或内容的高速缓存器配置。然而,该解决方案导致与新的内容共享相同的高速缓存器配置的现有的页或内容不被高速缓存器处理。因此,当删除高速缓存器配置并验证新的内容时,任何用户都不能访问现有的内容。
另一个解决方案是在发出预览请求前和发出预览请求后,使已被高速缓存的页或内容无效。该解决方案的缺点是:对用于预览在无效发生之前从高速缓存器提供的内容的定时窗口和试图访问原始内容的用户的影响。当请求已被无效的现有页或内容时,由于系统需要重新产生该页或内容并将其放入高速缓存中,这也可能会给系统带来额外的工作负荷。
发明内容
根据本发明的一个实施例,一种用于预览新的可高速缓存的内容的方法包括在替代高速缓存器中的任何现有的内容之前或高速缓存新的内容之前将跳过高速缓存单元(skip-cache element)添加到预览新的可高速缓存的内容的请求。该方法还包括响应于所述请求包括所述跳过高速缓存单元并且所述跳过高速缓存单元被定义在高速缓存策略中,绕过对所述请求的高速缓存处理。这允许预览新的内容,并且使现有的内容象以前一样被服务。
根据本发明的另一实施例,一种用于预览新的可高速缓存的内容的系统包括服务器和与服务器相关联的高速缓存器。该系统还包括用于在替代高速缓存器中的任何现有的内容之前或高速缓存新的可高速缓存的内容之前将跳过高速缓存单元添加到预览新的可高速缓存的内容的请求的模块。
根据本发明的另一实施例,一种用于预览新的可高速缓存的内容的计算机程序产品包括计算机可用介质,该计算机可用介质具有包含在其中的计算机可用程序代码。该计算机可用介质包括配置为在替代高速缓存器中的任何现有的内容之前或高速缓存新的内容之前将跳过高速缓存单元添加到预览新的可高速缓存的内容的请求的计算机可用程序代码。计算机可用介质还包括配置为响应于所述请求包括所述跳过高速缓存单元并且所述跳过高速缓存单元被定义在高速缓存策略中,绕过对所述请求的高速缓存处理的计算机可用程序代码。
如权利要求所单独定义的,对本领域技术人员来说,通过结合附图阅读阅览本发明的下述非限制性详细描述,本发明的其它方面和特征将变得明了。
附图说明
图1是根据本发明的实施例的用于预览可高速缓存的内容的方法的示例的流程图。
图2是根据本发明的实施例的用于预览可高速缓存的内容的系统的示例的方框图。
具体实施方式
以下对实施例的详细说明参考用来说明本发明的具体实施例的附图。具有不同结构和操作的其它实施例不偏离本发明的范围。
本领域技术人员可以理解,本发明可以实施为方法、系统或计算机程序产品。因此,本发明可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或者结合软件和硬件方面的实施例的形式,在此可以将其它们统称为“电路”、“模块”或“系统”。另外,本发明可以采用计算机可用存储介质(例如图2的介质228)上的具有包含在该介质中的计算机可用程序代码的计算机程序产品的形式。
可以利用任何合适的计算机可用或计算机可读介质。计算机可用或计算机可读介质可以是,例如但不限于,电子、磁、光、电磁、红外或半导体系统、设备、装置或传播介质。计算机可读介质的更具体的示例(非穷举的列表)包括如下:具有一条或多条布线的电气连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦写可编程只读存储器(EPROM或闪存)、光纤、便携式紧致盘只读存储器(CD-ROM)、光存储装置、诸如那些支持因特网或内联网的传输介质或磁存储装置。注意,计算机可用或计算机可读介质甚至可以是纸或其它适于在其上打印程序的介质,因为程序可以通过例如对纸或其它介质的光学扫描而被电子捕获,然后,如果必要的话,汇编、编译、或者以其它合适的方式处理,然后存储在计算机存储器中。在本文献的上下文中,计算机可用或计算机可读介质可以是能包含、存储、通信、传播、或传送程序的任何介质,可以由指令执行系统、设备或装置或与指令执行系统、设备或装置连接而使用该介质。计算机可用介质可以包括在基带或作为载波的一部分被传播的、具有包含在其中的计算机可用程序代码的数据信号。可以采用任何适当的介质来传送计算机可用程序代码,所述适当的介质包括但不限于因特网、有线线路、光纤、射频(RF)或其它方式。
可以采用诸如Java、Smalltalk、C++等面向对象编程语言来编写执行本发明的操作的计算机程序代码。但是,也可以采用诸如“C”编程语言或者类似的编程语言等传统的过程编程语言来编写用来执行本发明的操作的计算机程序代码。程序代码可以作为独立软件包完全在用户计算机上执行、部分在用户计算机上执行、部分在用户计算机上执行并且部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后者的情况下,可以通过局域网(LAN)或广域网(WAN)使远程计算机与用户的计算机连接,或者与外部计算机进行该连接(例如,通过采用因特网服务提供商的因特网)。
以下参考根据本发明的实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述本发明。可以理解,可以通过计算机程序指令实现流程图和/或方框图中的每个方框以及流程图和/或方框图中的方框的结合。可以将这些计算机程序指令提供给通用计算机的处理器、专用计算机或其它可编程数据处理设备,以产生一种机器,使得通过计算机的处理器或其它可编程数据处理设备执行的指令创建用来实现流程图和/或方框图的方框中的指定功能/动作的装置(means)。
也可以将这些计算机程序指令存储在计算机可读存储器中,该计算机可读存储器可以指导计算机或其它可编程数据处理设备以特定的方式运行,使得存储在计算机可读存储器中的指令产生包括实现在流程图和/或方框图的方框中指定的功能/动作的指令装置(means)的制造品。
还可以将计算机程序指令加载到计算机或其它可编程数据处理设备上,从而在计算机或其它可编程设备上执行一系列操作步骤,以产生计算机实现的处理,使得在计算机或其它可编程设备上执行的指令提供用来实现在流程图和/或方框图的方框中指定的功能/动作的步骤。
图1是根据本发明的实施例的用于预览可高速缓存的内容的方法100的示例的流程图。在方框102,可以接收请求。该请求可以是用于在高速缓存新的内容或者替代高速缓存器中现有的内容之前预览该新的内容的预览请求,或者该请求可以是用于某些其它信息、内容、服务或者其它目的的非预览请求。可以通过服务器、web服务器、应用服务器等接收来自客户机的请求。
在框104,确定该请求是预览请求还是非预览请求。如果该请求是非预览请求,则方法100前进到方框106。在方框106,可以采用常规的高速缓存处理来处理该请求。因此,当正在预览和验证新的可高速缓存的内容时,本发明允许非预览请求的常规的高速缓存处理,直到现有的高速缓存器内容被新的可高速缓存的内容替代。当发生预览时,对现有内容的其它请求还可以继续,从而不会影响观看现有内容的用户。
如果在框104的请求是预览请求,则方法100前进到方框108。在方框108,可以将跳过高速缓存单元添加到该请求或者请求上下文。跳过高速缓存单元可以是诸如高速缓存代理(proxy)代码或者使高速缓存处理如这里所述被绕过的其它代码的代码。可以通过servlet过滤器、在执行预览请求之前设置或加入跳过高速缓存单元的预执行机制、或者能添加适当代码的另一机制来添加所述跳过高速缓存单元。
在方框110中,可以将该请求传递到高速缓存处理程序。在方框112,高速缓存处理程序可以在请求上下文中检查跳过高速缓存单元的存在。在框114,可以响应于在请求上下文中存在跳过高速缓存单元并且在高速缓存策略中定义了相同的跳过高速缓存单元,绕过对所述请求的高速缓存处理。可以采用未被高速缓存的执行路径来处理所述请求,或者在与不可高速缓存的片段类似的常规请求流之后处理所述请求。不能保存或者从高速缓存器检索对预览请求的响应的任何成分。
在方框116,如果适当或需要的话,可以将新的内容118返回到请求方,以便进行呈现、阅览和修订。在方框120,可以响应于新的内容正在被预览并验证或核实,将该新的内容高速缓存在高速缓存器中或者可以替代高速缓存器中的现有内容。在高速缓存或者替代任何现有内容之前,可以通过预览并验证或核实新的内容来避免与使新的内容无效相关联的数据完整性问题或者类似的问题。
图2是根据本发明的实施例的用于预览可高速缓存的内容的系统200的示例的方框图。图1的方法100可以在系统200中实现。系统200可以包括服务器202。服务器202可以是web服务器、应用服务器或者其它类型的服务器或处理器。可以在电子商务或者其它与商业有关的活动中使用服务器202。一个或多个客户机204可以经由网络206访问服务器202。网络206可以是因特网、内联网或者其它私有、安全或专用网络。Web服务器208或者其它网关设备可以与服务器202相关联,以便与网络206连接。
可以在服务器202上运行或操作一个或多个应用210。每个应用210能创建新的可高速缓存的内容212。新的可高速缓存的内容212可以与高速缓存器218中的现有内容216的一部分共享相同的高速缓存策略214,并且可以产生与现有内容216的所述部分相同的高速缓存密钥。
模块220适于将跳过高速缓存单元222添加到预览新的可高速缓存的内容212的请求224或请求上下文。客户机204之一可以经由网络206和web服务器208请求预览新内容的请求224。用于添加跳过高速缓存单元222的模块220可以包括servlet过滤器、预执行机制、或者能将适当的代码添加到预览请求224的上下文的其它机制。
服务器202也可以包括高速缓存处理程序226。可以将包括跳过高速缓存单元222的预览请求224′传递给高速缓存处理程序226。高速缓存处理程序226可以在请求上下文224′中检查跳过高速缓存单元222的存在。响应于在请求224′中存在跳过高速缓存单元222并且在高速缓存策略214中定义了相同的跳过高速缓存单元222,高速缓存处理程序226可以绕过高速缓存处理并使可高速缓存的内容返回到客户机204。
附图中的流程图和方框图说明了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实施方式的结构、功能和操作。在这方面,流程图或方框图中的每个方框可以表示模块、片段或者部分代码,其包括用来实现指定的逻辑功能的一个或多个可执行指令。还应注意,在一些可替代实施方式中,在方框中所示的功能可以不以附图中所示的顺序出现。例如,事实上可以基本上同时执行连续示出的两个方框,或者有时可以以相反的顺序执行方框,取决于所涉及的功能性。还应注意,可以由执行指定的功能或动作的专用的基于硬件的系统、或者专用硬件和计算机指令的组合来执行方框图和/或流程图的每个方框以及方框图和/或流程图中的方框的组合。
在此所使用的术语只是出于描述特定实施例的目的,而不旨在限制本发明。如这里所使用的,单数形式“一”和“该”旨在也包括复数形式,除非上下文另外清楚地指明。还应理解,当术语“包括”用在说明书中时,是指所说明的特征、整数、步骤、操作、单元、和/或部件的存在,而不排除一个或多个其它特征、整数、步骤、操作、单元、部件和/或组的存在或添加。
尽管这里已经说明并描述了具体实施例,但是本领域技术人员应该理解,能够实现相同目的的任何配置都可以用来替代示出的具体实施例,并且本发明在其它环境中有其它应用。该应用旨在覆盖本发明的任何修改或变化。以下权利要求绝不旨在将本发明的范围限制在这里所描述的具体实施例。

Claims (14)

1.一种预览新的可高速缓存的内容的方法,包括:
在替代高速缓存器中的任何现有的内容或高速缓存新的内容之前,将跳过高速缓存单元添加到预览新的可高速缓存的内容的请求;以及
响应于所述请求包括所述跳过高速缓存单元并且所述跳过高速缓存单元被定义在高速缓存策略中,绕过对所述请求的高速缓存处理。
2.根据权利要求1的方法,还包括将所述跳过高速缓存单元定义为高速缓存策略中的特性。
3.根据权利要求1的方法,还包括防止对所述请求的响应的任何成分被保存。
4.根据权利要求1的方法,还包括防止对所述请求的响应的任何成分从高速缓存中被检索。
5.根据权利要求1的方法,还包括响应于非预览请求,执行常规的高速缓存处理。
6.根据权利要求1的方法,还包括允许与新的可高速缓存的内容采用相同的高速缓存策略的任何现有的高速缓存器内容被高速缓存器处理,直到已经预览了所述新的可高速缓存的内容并且允许所述新的可高速缓存的内容替代任何现有的高速缓存器内容。
7.根据权利要求1的方法,还包括通过直到已经预览了所述新的可高速缓存的内容并允许所述新的可高速缓存的内容替代任何现有的高速缓存器内容才将所述新的可高速缓存的内容保存在高速缓存器中,来防止与使得所述新的可高速缓存的内容无效相关联的任何数据完整性问题。
8.根据权利要求1的方法,还包括响应于预览和核实所述新的可高速缓存的内容,利用新的可高速缓存的内容来替代现有的高速缓存器内容。
9.根据权利要求1的方法,还包括响应于所述请求包括跳过高速缓存单元并且同样的跳过高速缓存单元被定义在高速缓存策略中,完成请求的未被高速缓存的执行。
10.一种用来预览新的可高速缓存的内容的系统,包括:
服务器;
与所述服务器相关联的高速缓存器;以及
用来在替代高速缓存器中的任何现有的内容之前或高速缓存新的可高速缓存的内容之前将跳过高速缓存单元添加到预览新的可高速缓存的内容的请求的模块。
11.根据权利要求10的系统,还包括高速缓存策略,该高速缓存策略包含跳过高速缓存单元的定义。
12.根据权利要求11的系统,还包括高速缓存处理程序,适于在所述请求中检查所述跳过高速缓存单元的存在,并响应于所述请求包括跳过高速缓存单元并且所述跳过高速缓存单元被定义在高速缓存策略中,绕过高速缓存处理。
13.根据权利要求10的系统,其中,用于添加跳过高速缓存单元的模块包括servlet过滤器。
14.根据权利要求10的系统,其中,所述新的可高速缓存的内容与要被所述新的可高速缓存的内容替代的现有的内容共享相同的高速缓存策略。
CN2007101542676A 2006-12-27 2007-09-17 用于预览新的可高速缓存的内容的方法和系统 Active CN101211317B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/616,403 2006-12-27
US11/616,403 US8527711B2 (en) 2006-12-27 2006-12-27 Method and system to preview new cacheable content

Publications (2)

Publication Number Publication Date
CN101211317A true CN101211317A (zh) 2008-07-02
CN101211317B CN101211317B (zh) 2011-08-31

Family

ID=39585659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101542676A Active CN101211317B (zh) 2006-12-27 2007-09-17 用于预览新的可高速缓存的内容的方法和系统

Country Status (2)

Country Link
US (1) US8527711B2 (zh)
CN (1) CN101211317B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105359485A (zh) * 2013-06-28 2016-02-24 汤姆逊许可公司 由客户终端获得多媒体内容的内容部分的方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10241765B2 (en) * 2016-10-31 2019-03-26 International Business Machines Corporation Apparatuses, methods, and computer program products for reducing software runtime

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160582A (ja) * 1993-12-06 1995-06-23 Mitsubishi Electric Corp キャッシュバッファを有するデータ処理装置
US6636242B2 (en) * 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
US6467028B1 (en) * 1999-09-07 2002-10-15 International Business Machines Corporation Modulated cache for audio on the web
US6587928B1 (en) * 2000-02-28 2003-07-01 Blue Coat Systems, Inc. Scheme for segregating cacheable and non-cacheable by port designation
GB2363017B8 (en) * 2000-03-30 2005-03-07 Autodesk Canada Inc Processing image data
US20040205633A1 (en) * 2002-01-11 2004-10-14 International Business Machines Corporation Previewing file or document content
US6922754B2 (en) * 2002-12-09 2005-07-26 Infabric Technologies, Inc. Data-aware data flow manager
US7912920B2 (en) * 2002-12-13 2011-03-22 Stephen Loomis Stream sourcing content delivery system
US7111229B2 (en) * 2003-06-25 2006-09-19 Yahoo! Inc. System and method for providing a webpage
US7434235B2 (en) * 2005-05-16 2008-10-07 Microsoft Corporation Type server caching the proxy/stub generation
US20070073833A1 (en) * 2005-09-28 2007-03-29 International Business Machines Corporation Web page preview without browsing to web page

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105359485A (zh) * 2013-06-28 2016-02-24 汤姆逊许可公司 由客户终端获得多媒体内容的内容部分的方法
CN105359485B (zh) * 2013-06-28 2021-01-22 交互数字麦迪逊专利控股公司 由客户终端获得多媒体内容的内容部分的方法

Also Published As

Publication number Publication date
CN101211317B (zh) 2011-08-31
US8527711B2 (en) 2013-09-03
US20080162815A1 (en) 2008-07-03

Similar Documents

Publication Publication Date Title
JP4884243B2 (ja) 構成可能な期間に関するプライベート・データをキャッシュする方法及び装置
JP6518700B2 (ja) ユーザとコンテンツデータとの対話によってデータをルーティングしてユーザを接続するシステムおよび方法
US7814234B2 (en) Offline execution of web based applications
JP5022301B2 (ja) プロキシサーバおよび通信中継プログラム、並びに通信中継方法
US7778987B2 (en) Locally storing web-based database data
US7599936B2 (en) Publication service using web pages and web search engines
US20130060885A1 (en) Method and apparatus for enabling offline web application execution
EP1517250A1 (en) Improved systems and methods for ranking documents based upon structurally interrelated information
JP2012533823A (ja) ローカルマシンに関する情報をブラウザアプリケーションに通信すること
US20120254289A1 (en) Method and apparatus for providing service mobility across service deployment boundaries
US8539026B2 (en) Source identification for multipart content validation
US9560121B2 (en) Provisioning a web hosting resource using a cloud service
US8234402B2 (en) Method and apparatus for request routing
CN102484647A (zh) 高速缓存保护
US9363335B2 (en) Method and apparatus that enables a web-based client-server application to be used offline
US20140089387A1 (en) Session-server affinity for clients that lack session identifiers
CN101799821A (zh) 一种通过微件实现网页应用的方法及系统
CN111881394A (zh) 一种应用中间层的请求处理方法及系统
US9778919B2 (en) Dual context interaction with a content object for facilitating content creation and software development
CN101211317B (zh) 用于预览新的可高速缓存的内容的方法和系统
US8793326B2 (en) System, method and computer program product for reconstructing data received by a computer in a manner that is independent of the computer
US9378178B1 (en) Enhancing HTTP caching by allowing content sharing of data blocks across resources identified by different uniform resource locators
JP2007272492A (ja) 認証認可サーバ、認証認可システム、認証認可方法及び認証認可プログラム
US9164781B2 (en) Client bundle resource creation
US20080294904A1 (en) Method to prevent access of web applications from bookmarked links

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant