用于处理Web服务请求的方法和系统的制作方法

文档序号:7643786阅读:190来源:国知局

专利名称::用于处理Web服务请求的方法和系统的制作方法
技术领域
:本发明一般涉及一种改进的数据处理系统,并且特别地,涉及一种用于处理Web服务请求的方法、系统和计算机程序产品。更特别地,本发明涉及一种用于高速缓存Web服务请求的改进的计算机实现的方法、系统和计算机程序产品。
背景技术
:通过利用Web服务可以将旧应用集成到最近开发的数据处理系统和应用中。Web服务是由Web服务服务器提供的应用。可以利用通过诸如超文本传输协议(HTTP)的各种不同的网际协议所接收的可扩展置标语言(XML)请求调用Web服务。可以直接在旧应用上分层的Web服务运行时接口可以充当协调器,其将外部可扩展置标语言(XML)请求转换成应用编程接口(API)调用以执行旧应用。Web服务运行时将旧应用的输出作为在简单对象访问协议(SOAP)包封中包装的XML消息返回。当前的Web服务实现仅支持非全即无(all-or-nothing)方法来高速缓存Web服务响应。没有可用于处理可以高速缓存响应段的分段方法的现有方法。此外,当前也不支持指定Web服务请求应当可高速缓存于特定的参数集上。Web服务中缺乏分段高速缓存能力可以导致可缩放性和性能问题。例如,当接收到仅可部分高速缓存的请求时,Web服务不会高速缓存响应的任何部分。每次接收到相同的不可高速缓存的请求,Web服务会重新产生整个响应。如果应用使Web服务暴露于可以由数千或数百万的客户机同时访问的因特网上,则该过程可能会格外麻烦。最后,Web服务实现通常将响应产生逻辑直接嵌入到Web服务应用的业务逻辑。为了定制响应,修改实际的Web服务程序代码。因而,Web服务响应的扩展必须被设计具有高重要性的文档编制,以描述如何与编程模型集成。因此,由于雇用精通Web服务的编程模型的程序员的费用,修改Web服务的现有实现以改善性能或定制响应可能是不切实际或难于负担的。
发明内容本发明的方面提供了一种用于产生对来自请求者的Web服务请求的响应的计算机实现的方法、系统以及计算机程序产品。响应于接收到Web服务请求,Web服务控制器调用与所述请求关联的业务逻辑接口。可以从高速缓存获得或者从所述接口导出所述接口的输出。执行可定制的模板以产生对所述请求的响应。对关于所述响应是否包括一组可高速缓存的内容进行确定。响应于确定所述响应包括一组可高速缓存的内容,将所述可高速缓存的内容组存储于所述高速缓存中。将所述响应发送至所述请求者。在所附权利要求中阐述了被认为是本发明的特色的新颖的特征。然而,在结合附图阅读的时候,通过参照下面说明性实施例的详细描述将最好地理解本发明本身,以及使用的优选模式、其更多的目的和优点,其中图1是可以在其中实现本发明的方面的数据处理系统的网络的示例性图形表示;图2是可以在其中实现本发明的方面的数据处理系统的示例性框图;图3是依照本发明的一个示例性实施例的Web服务服务器的示例性框图;图4是依照本发明的一个示例性实施例,在Web服务请求处理期间的消息流的示例性说明;图5是依照本发明的一个示例性实施例,概述在从请求者最初接收Web服务请求时本发明的示例性操作的流程图;图6是依照本发明的一个示例性实施例,用于将Web服务请求映射到旧应用编程接口的XML代码的示例性说明;图7是依照本发明的一个示例性实施例,概述在执行旧应用时本发明的示例性操作的流程图;图8是依照本发明的一个示例性实施例,概述在对关于是否执行旧应用进行确定时本发明的示例性操作的流程图;图9是依照本发明的一个示例性实施例,在接收到只读请求时XML代码的示例性说明;图10是依照本发明的一个示例性实施例,概述在产生响应时本发明的示例性操作的流程图;图11是依照本发明的一个示例性实施例,概述在高速缓存Web服务响应时本发明的示例性操作的流程图;图12是依照本发明的一个示例性实施例,在利用分段高速缓存产生响应时XML代码的示例性说明。具体实施例方式如本领域的技术人员可以理解的,本发明可以体现为方法、系统或计算机程序产品。相应地,本发明可以采取全软件实施例(包括固件、常驻软件、微码等)的形式或结合所有在此一般称为“电路”或“模块”的软件和硬件方面的实施例的形式。此外,本发明可以采取计算机可用存储介质上的计算机程序产品的形式,该计算机可用存储介质在介质中具有计算机可用程序代码。可以利用任何适合的计算机可用或可读介质。计算机可用或计算机可读介质可以是,例如但不限于电子、磁性、光学、电磁、红外或半导体系统、系统、设备或传播介质。计算机可读介质的更多具体的例子(非穷尽的列表)可以包括以下具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪速存储器)、光纤、便携式压缩磁盘只读存储器(CD-ROM)、光存储设备、诸如那些支持因特网或内联网的传输介质,或者磁存储设备。注意到计算机可用或计算机可读介质甚至可以是纸或在其上打印了程序的另外的合适的介质,这是因为可以通过例如纸或其它介质的光扫描来电子捕获程序,然后编译、解释或以合适的方式进行不同的处理,如果有必要,那么便存储在计算机存储器中。在本文档的上下文中,计算机可用或计算机可读介质可以是任何这样的介质,即该介质可以容纳、存储、通信、传播或传输由指令执行系统、系统或设备所使用的或与指令执行系统、系统或设备相连的程序。用于实现本发明的操作的计算机程序代码可以以诸如Java7、Smalltalk或C++的面向对象的编程语言书写。然而,举例来说,用于实现本发明的操作的计算机程序代码还可以以诸如“C”编程语言的常规的过程编程语言书写。程序代码可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为独立的软件包执行、部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机上执行。在后者的情形中,远程计算机可以通过局域网(LAN)或广域网(WAN)连接至用户的计算机,或者可以将连接安排至外部计算机(例如,通过使用因特网服务提供商的因特网)。下面参照根据本发明的实施例的方法、系统和计算机程序产品的流程说明和/或框图描述本发明。可以理解到,可以由计算机程序指令实现流程图说明和/或框图的每个块,以及流程图说明和/或框图中块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器来产生机器,以便通过计算机或其它可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图块中所指定的功能/动作。还可以将这些计算机程序指令存储在可以指导计算机或其它可编程数据处理装置以特定方式运行的计算机可读存储器中,以便存储在计算机可读存储器中的指令产生包括实现流程图和/或框图块中所指定的功能/动作的指令装置的制品。还可以将计算机程序指令加载到计算机或其它可编程数据处理装置,从而使一系列操作步骤在计算机或其它可编程装置上执行,以产生计算机实现的过程,以便在计算机或其它可编程装置上执行的指令提供用于实现流程图和/或框图块中所指定的功能/动作的步骤。现参照附图,并且特别参照图1至图2,提供了可以在其中实现本发明的实施例的数据处理环境的示例图。应当理解图1至图2仅是示例性的,并不打算主张或暗示关于可以在其中实现本发明的实施例的方面的环境的任何限制。可以在不背离本发明的精神和范围的情况下,对所描述的环境进行很多修改。现参照附图,图1描述了可以在其中实现本发明的方面的数据处理系统的网络的图形表示。网络数据处理系统100是可以在其中实现本发明的实施例的计算机的网络。网络数据处理系统100含有网络102,其是用于在网络数据处理系统100内连在一起的各种设备和计算机之间提供通信链路的介质。网络102可以包括诸如有线、无线通信链路或光缆的连接。在所描述的例子中,服务器104和服务器106与存储单元108一起连接至网络102。依照本发明的方面,服务器102和104是Web服务服务器。另外,客户机110、112和114连接至网络102。这些客户机110、112和114可以是例如个人计算机或网络计算机。在所描述的例子中,服务器104向客户机110、112和114提供诸如引导文件、操作系统图像以及应用的数据。在该例子中,客户机110、112和114是服务器104的客户机。网络数据处理系统100可以包括附加的服务器、客户机和未示出的其它设备。依照该说明性例子,客户机110、112和114通过网络102向诸如服务器102和104的服务器传送Web服务请求。作为响应,诸如服务器102和104的Web服务服务器通过网络102向诸如客户机110、112和114的客户机请求者发送Web服务响应。在所描述的例子中,网络数据处理系统100是具有网络102的因特网,网络102代表使用传输控制协议/网际协议(TCP/IP)协议组相互通信的全世界的网络和网关的集合。在因特网的核心是主节点或主计算机之间的高速数据通信线路的主干线,包括路由数据和消息的数千商业的、政府的、教育的和其它的计算机系统。当然,网络数据处理系统100还可以实现为许多不同类型的网络,举例来说,例如内联网、局域网(LAN)或广域网(WAN)。图1意在作为例子,并不作为对本发明的不同实施例的结构限制。现参照图2,示出了可以在其中实现本发明的方面的数据处理系统的框图。数据处理系统200是诸如图1中的服务器104或客户机110的计算机的例子,可以在其中设置实现用于本发明的实施例的过程的计算机可用代码或指令。在所描述的例子中,数据处理系统200使用包括北桥和存储控制器集线器(NB/MCH)202以及南桥和输入/输出(I/O)控制器集线器(SB/ICH)204的集线器体系结构。处理单元206、主存储器208以及图形处理器210连接至NB/MCH202。图形处理器210可以通过加速图形端口(AGP)连接至NB/MCH202。在所描述的例子中,局域网(LAN)适配器212连接至SB/ICH204。音频适配器216、键盘和鼠标适配器220、调制解调器222、只读存储器(ROM)224、硬磁盘驱动器(HDD)226、CD-ROM驱动器230、通用串行总线(USB)端口和其它通信端口232,以及PCI/PCIe设备234通过总线238和总线240连接至SB/ICH204。PCI/PCIe设备可以包括,例如以太网适配器、附加卡(add-incards)以及用于笔记本计算机的PC卡。PCI使用卡式总线控制器,而PCIe并不使用。ROM224可以是,例如闪速二进制输入/输出系统(BIOS)。HDD226和CD-ROM驱动器230通过总线240连接至SB/ICH204。HDD226和CD-ROM驱动器230可以使用,例如集成驱动器电子电路(IDE)或串行高级技术配件(SATA)接口。超级I/O(SIO)设备236可以连接至SB/ICH204。操作系统在处理单元206上运行,并且协调和提供图2中数据处理系统200内的各种组件的控制。作为客户机,操作系统可以是市场上可买到的操作系统,例如Microsoft_Windows_XP(Microsoft和Windows是微软公司在美国、其它国家或二者的商标)。面向对象的编程系统,例如Java_编程系统,可以结合操作系统运行并且从在数据处理系统200上执行的Java_程序或应用向操作系统提供调用(Java是SunMicrosystems公司在美国、其它国家或二者的商标)。作为服务器,数据处理系统200可以是,例如IBM_eServerTMpSeries_计算机系统、运行高级交互执行程序(AIX_)操作系统或LINUX_操作系统(eServer、pSeries和AIX是国际商业机器公司在美国、其它国家或二者的商标,而LINUX是LinusTorvalds在美国、其它国家或二者的商标)。数据处理系统200可以是在处理单元206中包括多个处理器的对称多处理器(SMP)系统。可选地,可以使用单处理器系统。用于操作系统的指令、面向对象的编程系统以及应用或程序位于诸如HDD226的存储设备,并且可以被加载到主存储器208给处理单元206执行。用于本发明的实施例的过程是由处理单元206使用计算机可用程序代码来执行的,举例来说,其可以位于诸如主存储器208、ROM224的存储器中,或者位于一个或多个外围设备226和230中。本领域的普通技术人员可以理解,图1至图2中的硬件可以取决于实现而变化。除了图1至图2中所描述的硬件之外,或者代替图1至图2中所描述的硬件,可以使用诸如闪速存储器、等效非易失性存储器或光盘驱动器等的其它的内部硬件或外围设备。此外,本发明的过程可以应用于多处理器数据处理系统。在一些说明性例子中,数据处理系统200可以是个人数字助理(PDA),其被配置具有闪速存储器,以提供用于存储操作系统文件和/或用户产生的数据的非易失性存储器。总线系统可以包括一个或多个总线,例如图2中所示出的总线238或总线240。当然,可以使用在依附于构造或体系结构的不同组件或设备之间提供数据传递的任何类型的通信构造或体系结构来实现总线系统。通信单元可以包括用于发送和接收数据的一个或多个设备,例如图2的调制解调器222或网络适配器212。存储器可以是,例如主存储器208、ROM224或诸如可以在图2中的NB/MCH202中找到的高速缓存。图1至图2中所描述的例子以及上述例子并不意味着暗示结构限制。例如,数据处理系统200除了采取PDA的形式之外,还可以是平板计算机(tabletcomputer)、膝上型计算机或电话设备。当前,通过因特网传输数据的最常用的方法是使用万维网环境,也简称为“Web”。在Web环境中,诸如图1中的服务器102和104以及客户机110-114的服务器和客户机,使用超文本传输协议(HTTP)(用于处理各种数据文件的传输的已知协议)影响数据事务。这些类型的数据文件的例子包括文本、静止图形图像、音频以及动态视频。通过标准页面描述语言,超文本置标语言(HTML)或可扩展置标语言(XML),将各种数据文件中的信息格式化用于向用户演示。Web服务是由Web服务服务器提供的应用。Web服务提供XML接口,其使得用户能够通过不同类型的网际协议访问应用业务逻辑,网际协议包括但不限于诸如超文本传输协议(HTTP)的标准网际协议。很多旧应用需要被集成到新的数据处理系统。软件产业集成离散系统和应用的解决方案是向旧应用的现有逻辑提供Web服务接口。以这种方式可以使任何类型的应用作为Web服务可用。本发明的方面承认,因为当前的Web服务实现和Web服务运行时仅支持非全即无方法来高速缓存Web服务请求而可能出现Web服务性能问题。对于处理服务Web服务请求的分段高速缓存方法,其中可以从高速缓存导出响应的元素,没有可用的现有方法。此外,该模型也不支持指定请求应当可高速缓存于特定的参数集上。最后,由于雇用精通旧应用的特定编程模型的程序员的费用,修改旧应用编程接口的现有实现以改善性能,或者修改Web服务框架以定制响应格式可能是不切实际的。本发明的方面提供了一种用于高速缓存Web服务请求的改进的计算机实现的方法、系统和计算机可用程序代码。依照本发明的实施例,提供Web服务,其中在产生Web服务响应的过程期间多个高速缓存点可用。Web服务控制器充当协调器,以将来自客户机请求者的外部XML请求转换成调用,以执行与Web服务旧应用关联的旧应用编程接口。旧应用编程接口的输出可以存储在高速缓存中。此外,从用于产生对Web服务请求的响应的响应产生逻辑将与旧应用关联的业务逻辑接口去耦。以这种方式,提供了附加的高速缓存点用于高速缓存响应。本发明的方面还提供了可定制的模板,其被执行以产生对Web服务请求的响应。可以将可定制的模板保存在高速缓存中。另外,如果所产生的响应可高速缓存,则可以将响应保存在高速缓存中。即使不是整个响应都可高速缓存,依照分段高速缓存方法,也可以将响应的一个或多个分段保存在高速缓存中。将从高速缓存导出的或通过执行模板所产生的响应作为XML响应消息返回请求客户机。图3是依照本发明的一个示例性实施例的Web服务服务器的示例性框图。Web服务服务器300是诸如图1中的服务器104和106的服务器。请求者310是Web服务的请求者。请求者310可以访问任何Web环境(包括因特网、内联网或外联网)中的Web服务。另外,请求者310可以是用户、另一应用程序,或者甚至是另一Web服务。依照本发明的一个实施例,请求者310是访问Web服务器的客户机。请求者310可以以多种不同的方式调用Web服务应用。依照本发明的方面,请求者310可以进行Web服务请求,以通过使用用于调用Web服务的任何已知的或可用的方法调用Web服务。例如,依照常规的调配模型,中央Web服务服务器上公开的Web服务定义语言(WSDL)定义该Web服务所支持的服务。依照该例子,诸如图1中的客户机110-114的客户机可以通过连接至中央Web服务服务器并且请求由公开可用的Web服务定义语言所定义的任何Web服务应用来调用Web服务。Web服务请求315包括包装在简单对象访问协议包封中的XML请求。简单对象访问协议包封提供关于如何处理XML请求的信息。Web服务运行时320接收来自请求者310的Web服务请求315。Web服务运行时320处理网络协议,并且依照封装请求的简单对象访问协议元素处理请求。Web服务运行时320从简单对象访问协议包封提取Web服务请求315的XML请求,以形成XML请求328。Web服务运行时支持用于诸如XML请求328的Web服务请求的非全即无高速缓存方法。因此,如果XML请求328可高速缓存,则Web服务运行时320确定对XML请求328的XML响应是否存储在高速缓存中。如果对XML请求328的XML响应385存储在高速缓存中,则Web服务运行时320检索高速缓存的XML响应385。Web服务运行时将XML响应385封入简单对象访问协议,从而在不执行用于产生响应的Web服务过程的情况下形成Web服务响应388,并且向请求者310传送Web服务响应388。然而,因为Web服务运行时仅支持非全即无方法来高速缓存,所以只有整个Web服务请求和响应都是可高速缓存的,才会将Web服务请求存储在高速缓存中。如果XML响应385并未存储在高速缓存中,则Web服务运行时320将XML请求328转发到用于处理XML请求328的Web服务控制器330,以产生XML响应385。Web服务控制器330是用于处理XML请求的模型查看控制器(MVC)框架。在接收到来自Web服务运行时320的XML请求328时,Web服务控制器330调用Web服务到旧应用映射340,以将XML请求328映射到与旧应用350关联的旧应用编程接口360上。在此示出的说明性例子中,接口360是与旧应用关联的应用编程接口。旧应用编程接口是在Web服务控制器与应用业务逻辑之间的业务逻辑接口。依照本发明的方面,接口360可以是能够充当Web服务控制器与应用业务逻辑之间的接口的任何类型的接口。Web服务到旧应用映射340产生用于调用旧应用编程接口360的参数。旧应用编程接口(API)360允许Web服务控制器330使用标准相容接口调用旧应用350的执行,而不关心如何实现旧应用350的特定功能性。Web服务控制器330利用Web服务到旧应用映射340所提供的调用格式来调用旧应用编程接口360。旧应用350代表任何数目的这样的软件应用,即该软件应用被设计成反应于通过通信端口的数据,提供请求者310要求的所期望的功能性。在这些例子中,旧应用350可以是任何类型的应用。例如,在该级别的应用可以包括处理可以由因特网的客户机通过对Web服务服务器300的请求而访问的数据或文本所必要的那些应用。Web服务控制器330接收用于从映射340调用旧应用编程接口360的格式。Web服务控制器330确定来自于旧应用编程接口360的输出是否存储在至少一个高速缓存中。如果该输出存储在高速缓存中,则Web服务控制器330从高速缓存检索高速缓存的旧应用编程接口输出。Web服务控制器330将高速缓存的旧应用编程接口输出转发到与响应构造引擎370关联的应用编程接口380。如果Web服务控制器330确定旧应用编程接口360的输出没有存储在高速缓存中,则Web服务控制器330调用旧应用编程接口360以启动旧应用350的执行。旧应用编程接口360将通过执行旧应用350所产生的输出返回到Web服务控制器330。Web服务控制器330将从旧应用编程接口360接收的输出转发到与响应构造引擎370关联的应用编程接口380。Web服务控制器330然后调用应用程序接口380来执行响应构造引擎370。响应构造引擎370产生对XML请求的响应,例如XML响应385。响应构造引擎370基于由响应构造引擎370接收的与特定请求有关的信息产生XML响应。响应构造引擎370可以基于任何可用的和/或相关的数据产生XML响应。例如,响应构造引擎370可以完全或部分基于从旧应用编程接口360接收的输出产生响应。另外,可以基于数据库或其它数据存储设备中可用的信息,以及响应模板本身中的参数产生XML响应。响应构造引擎370包括可定制的响应模板。响应构造引擎370执行响应模板,以基于响应构造引擎370的模板中指定的格式产生对XML请求328的XML响应385。另外,模板可以存储在高速缓存中。因而,如果对模板是可高速缓存的并且在高速缓存中可用进行了确定,则可以从一个高速缓存导出响应模板,用于执行以产生XML响应328。依照本发明的方面,可以使用对响应模板进行编码的任何编程语言创建响应构造引擎370。依照本发明的示例性实施例,响应构造引擎是诸如JavaServer_Pages(JSP)或Apache_Velocity的模板语言。当然,响应构造引擎370还可以包括其它类型的模板语言。此外,响应构造引擎370还可以包括任何其它的编程语言,甚至不是模板语言的语言。例如,还可以用C编程语言对响应构造引擎370进行编码。响应构造引擎370既支持响应的完整的高速缓存,又支持部分响应的分段高速缓存。响应构造引擎370依照响应构造引擎370中指定的高速缓存策略高速缓存响应。如果对XML请求328的响应存储在高速缓存中,则响应构造引擎370从高速缓存检索该响应。响应构造引擎370基于高速缓存的响应产生诸如XML响应385的XML响应。响应构造引擎370将XML响应385转发到Web服务控制器330。如果用于产生对XML请求328的响应的整个响应没有存储在高速缓存中,则响应构造引擎370确定响应的一个或多个分段是否存储在高速缓存中。如果响应的一个或多个分段作为高速缓存的内容386存储在高速缓存387中,则响应产生引擎370从高速缓存387检索高速缓存的内容386,而不是重新执行与高速缓存的内容386关联的模板分段。可高速缓存的响应是可以存储在高速缓存中的完整的XML响应。可以从高速缓存导出XML响应,而不是产生高速缓存中可用的可高速缓存的响应。单个可高速缓存的响应分段是可以存储在高速缓存中的一部分或一份响应。多个可高速缓存的响应分段包括可以存储在高速缓存中的多部分或多份XML响应。同样地,高速缓存的响应分段是当前存储在高速缓存中的一份或一段XML响应。如文中所使用的,一组可高速缓存的内容可以包括完整的可高速缓存的响应、单个可高速缓存的响应分段,或者多个可高速缓存的响应分段。一组可高速缓存的内容包括响应的静态部分。响应的静态部分是被更新或被修改得相对不频繁的响应部分。相反,响应的动态部分被更新或被修改得相对频繁。例如,如果接收到请求可用产品的描述以及那些产品的当前库存的Web服务请求,则或许会对可用产品的描述更新得相对不频繁,例如每周、每月、每年或可能从不更新。因此,可用产品的描述会包括响应的静态部分。该信息可以是在高速缓存中可用的可高速缓存的内容。然而,可用产品的当前库存很可能会需要经常更新以反映产品可用性的改变。因此,当前库存会包括响应的动态内容。响应构造引擎370执行与未存储在高速缓存中的响应分段关联的模板分段,以形成一组动态内容。响应构造引擎370从高速缓存检索高速缓存的响应分段,以形成一组高速缓存的内容386。响应产生引擎370基于动态内容组和高速缓存的内容组产生对请求的响应。依照本发明的方面,响应构造引擎370是可定制的模板,其可以被修改以改变通过执行模板所产生的响应的格式和/或修改用于响应的高速缓存策略。通过打开模板文本文件,以及依照用于更新和/或修改模板文本文件的任何已知的或可用的方法修改模板代码,可以修改和/或更新可定制的模板。例如,用户可以修改响应构造引擎370,以高速缓存XML响应的指定的分段或部分,而不是高速缓存整个响应。以这种方式,用户可以指定高速缓存响应的哪些部分,以及在产生响应期间动态地确定响应的哪些部分。依照用于更新模板的任何已知的或可用的方法,可以更新或修改可定制的模板。模板通过暴露XML响应简化了响应产生的定制,以便产生的响应可读。例如,如果模板语言是JavaServer_Pages模板语言,则用户可以修改模板语言文件,以将附加的XML元素插入响应,而不是必须修改Web服务模型的编程语言。以这种方式,模板语言考虑了响应的易扩展性。应用编程接口380允许Web服务控制器330使用标准相容接口调用响应构造引擎370。调用的参数指定关于处理Web服务响应388的信息。在接收到由响应构造引擎370产生的XML响应385时,Web服务控制器330将XML响应385传递至Web服务运行时320。Web服务运行时320将XML响应385封装在简单对象访问协议包封中,以形成Web服务响应388,并且通过网络将响应388传回请求者310。依照图3中所示出的示例性说明,从请求者310将Web服务请求315传送至Web服务服务器300。Web服务运行时320接收Web服务请求315,并且处理定义请求的简单对象访问协议包封。Web服务运行时320将XML请求328传递至Web服务控制器330。Web服务控制器330调用Web服务到旧应用映射340,以将Web服务映射到旧应用编程接口360。映射340产生对旧应用编程接口360的调用格式以执行旧应用350。Web服务控制器330从旧应用编程接口360接收执行旧应用的输出。Web服务控制器330调用应用编程接口380来执行响应构造引擎370,以基于旧应用处理接口360的输出产生响应。响应构造引擎370可以从高速缓存387接收一组高速缓存的内容386。如文中所使用的,高速缓存的内容组可以包括存储在高速缓存中的整个响应、单个响应分段,或者两个或多个响应分段。响应构造引擎370还执行响应模板以产生一组动态内容。如文中所使用的,动态内容可以包括整个响应、响应分段,或者两个或多个响应分段。响应构造引擎370基于高速缓存的内容组和动态内容组产生XML响应385。Web服务控制器330将响应构造引擎370产生的XML响应385发送至Web服务运行时320。Web服务运行时320将XML响应385封入简单对象访问协议包封,以形成Web服务响应388。Web服务运行时320通过网络将Web服务响应388传送至请求者310。依照本发明的实施例,旧应用350和Web服务到旧应用映射340可以包括在相同的组件内。依照本发明的说明性例子,如果旧应用在高速缓存中可用,则Web服务控制器330不调用Web服务到旧应用映射340来将请求映射到旧应用350。依照该实施例,不必调用Web服务到旧应用映射340,这是因为旧应用编程接口360输出在高速缓存中可用,并且不需要被执行。依照本发明的另一实施例,Web服务控制器330在调用Web服务到旧应用映射340以将请求映射到旧应用编程接口360之后,确定旧应用是否在高速缓存中可用。依照本发明的另一实施例,如果旧应用350可高速缓存,则Web服务控制器330启动在高速缓存中高速缓存旧应用350。依照本发明的方面,可以依照用于高速缓存数据的任何已知的方法来高速缓存旧应用350。依照本发明的说明性例子,Web服务控制器330检索接收于旧应用编程接口360的输出是从高速缓存检索的,而不是调用旧应用编程接口360来执行旧应用350。依照本发明的另一实施例,Web服务控制器330调用旧应用输出接口360以启动旧应用350的执行,并且返回从执行旧应用350接收到的输出。在该说明性例子中,从旧应用编程接口360动态地接收输出作为执行旧应用350的结果。因而,可以从至少一个高速缓存获得作为业务逻辑接口的旧应用编程接口360的输出。在这样的情况下,从业务逻辑接口导出存储在高速缓存中的输出。如果业务逻辑接口的输出在高速缓存中不可用,则通过执行与诸如XML请求328的请求关联的旧应用,从业务逻辑接口导出输出。图4是依照本发明的一个示例性实施例,在Web服务请求处理期间的消息流的示例性说明。在图3中的Web服务服务器300内实现图4中的消息传递流。请求者以封装在简单对象访问协议包封内的XML请求的形式,将Web服务请求410传送至Web服务运行时。Web服务运行时将简单对象访问协议从XML请求移除,并且将XML请求420传送至Web服务控制器。Web服务控制器接收XML请求。Web服务控制器调用Web服务到旧应用映射来执行映射逻辑430。映射逻辑430将XML请求映射到旧应用。映射逻辑430返回用于调用与旧应用关联的旧应用编程接口的格式。Web服务控制器执行旧应用编程接口(API)435以启动旧应用的执行。旧应用编程接口将来自于执行旧应用的输出返回到Web服务控制器。Web服务控制器调用响应构造引擎来执行440响应构造模板。响应构造引擎执行模板445以产生动态内容450和460。响应构造引擎从高速缓存检索高速缓存的内容455。响应构造引擎执行模板465以基于高速缓存的内容和动态内容产生XML响应。响应构造引擎将XML响应返回到Web服务控制器470。Web服务控制器将XML响应480传送至Web服务运行时。Web服务运行时将XML响应封入简单对象访问协议包封以形成Web服务响应。Web服务运行时将Web服务响应490传回请求者。图5是依照本发明的一个示例性实施例,概述在从请求者最初接收Web服务请求时本发明的示例性操作的流程图。通过诸如图3中的Web服务运行时320的Web服务运行时实现图5中的过程。Web服务运行时从请求者接收Web服务请求(步骤510)。Web服务运行时将XML请求从封入了XML的简单对象访问协议包封移除XML请求,以形成XML请求(步骤520)。Web服务运行时将XML请求发送至用于处理请求的Web服务控制器(步骤530)。在Web服务控制器已完成对请求的处理之后,Web服务运行时从Web服务控制器接收XML响应(步骤540)。Web服务运行时将XML响应封入简单对象访问协议包封(步骤550),并且将Web服务响应发送至请求者(步骤560),此后该过程终止。图6是依照本发明的一个示例性实施例,用于将Web服务请求映射到旧应用编程接口的XML代码的示例性说明。可以在诸如图3中的Web服务到旧应用映射340的映射组件中实现图6中所实现的代码。Web服务控制器调用Web服务到旧应用映射组件,以将Web服务请求映射到旧应用编程接口来产生调用以执行旧应用。由映射组件利用代码610来确定调用哪个Web服务旧应用编程接口来执行旧应用。代码行620指定将在映射期间定义的称为“viewTaskName”的常量。Web服务响应构造引擎会使用该附加信息来构造响应。换句话说,该配置代码提供了执行哪个应用与如何构造响应之间的相互关系。例如,当Web服务控制器调用映射组件时,映射组件将XML请求转换成一组名值对(name-value-pairs)。由旧应用编程接口利用该第一组名值对来执行旧应用。作为执行与旧应用编程接口关联的旧应用的结果,产生第二组名值对。将第一组和第二组名值对传递至响应构造引擎。响应构造引擎使用名值对作为参数以产生对XML请求的响应。然而,这仅仅是依照本发明的实施例的实现映射功能的一个例子。依照本发明的方面,可以利用用于将XML请求映射到接口的任何其它已知的或可用的方法。响应于接收到XML请求,Web服务控制器调用与请求关联的接口。Web服务控制器支持高速缓存功能,由此如果输出可高速缓存,则可以将接口的输出存储在高速缓存中。因而,可以通过Web服务控制器从高速缓存获得接口的输出。Web服务控制器还可以确定接口的输出是否已存储在高速缓存中。如果输出不在高速缓存中,则可以通过调用接口来执行诸如旧应用的应用而从接口导出接口的输出。响应于执行应用,接口将接口的输出返回到Web服务控制器。图7是依照本发明的一个示例性实施例,概述在执行旧应用时本发明的示例性操作的流程图。可以通过诸如图3中的Web服务控制器330的Web服务控制器来实现图7中的过程。Web服务控制器从Web服务运行时接收XML请求(步骤710)。Web服务控制器确定是否要求执行旧应用(步骤720)。例如,如果旧应用编程接口输出在高速缓存中可用,则可以不要求执行旧应用。如果不要求执行旧应用,则Web服务控制器调用响应构造引擎,以基于旧应用编程接口的输出产生对请求的XML响应(步骤760)。Web服务控制器接收由响应构造引擎产生的XML响应(步骤770)。Web服务控制器将XML响应发送至Web服务运行时,用于传回Web服务的请求者(步骤780),此后该过程终止。现在返回步骤720,如果要求执行旧应用,则Web服务控制器请求调用旧应用编程接口的格式以执行旧应用(步骤730)。控制器调用旧应用编程接口来执行旧应用(步骤740)。Web服务控制器从旧应用编程接口接收输出(步骤750)。控制器调用响应构造引擎(步骤760)。控制器从与响应构造引擎关联的应用编程接口接收XML响应(步骤770)。Web服务控制器将XML响应发送至Web服务运行时(步骤780),此后该过程终止。依照本发明的方面,可以基于高速缓存密钥(cachekey)对关于旧应用编程接口的输出是否在高速缓存中可用进行确定。高速缓存密钥包括定义可高速缓存的数据的类型的参数值。例如,如果执行旧应用以产生目标为三十岁的男性的活动,则可以由与该旧应用关联的应用编程接口高速缓存来自于旧应用的这一输出。当第二用户请求目标为三十岁的男性的活动时,Web服务控制器产生具有指定性别和年龄(在这种情况下是男性和三十岁)的参数的高速缓存密钥。高速缓存密钥还在利用高速缓存的多个应用编程接口中指定特定的旧应用编程接口。将高速缓存密钥的参数值与高速缓存中数据的参数进行比较,直到发现匹配。依照用于高速缓存数据并且从高速缓存检索数据的任何已知的或可用的方法,可以实现旧应用编程接口的输出的高速缓存。依照本发明的实施例,如果旧应用编程接口的输出在高速缓存中可用,则不进行对旧应用编程接口的调用。图8是依照本发明的一个示例性实施例,概述在对关于是否执行旧应用进行确定时本发明的示例性操作的流程图。图8中的过程是图7中的步骤720的更为详细的描述。可以在诸如图3中的Web服务控制器330的Web服务控制器中实现该过程。Web服务控制器确定来自于与旧应用关联的旧应用编程接口的输出是否可高速缓存(步骤882)。如果旧应用编程接口的输出不可高速缓存,则Web服务控制器调用旧应用编程接口来执行旧应用(步骤884)。响应构造引擎从旧应用编程接口接收执行旧应用的输出(步骤886)。Web服务控制器然后调用响应构造引擎以产生对Web服务请求的响应(步骤888)。依照该示例性实施例,基于来自于旧应用编程接口的输出产生响应(步骤888),此后该过程终止。现在返回步骤882,如果旧应用可高速缓存,则控制器产生用于请求的高速缓存密钥(步骤890)。Web服务控制器然后确定高速缓存中可用数据的任何值是否与高速缓存密钥相匹配(步骤894)。如果高速缓存中没有值与高速缓存密钥相匹配,则Web服务控制器调用旧应用编程接口来执行旧应用(步骤884)。Web服务控制器从旧应用编程接口接收输出(步骤886),并且基于所产生的高速缓存密钥将结果保存在高速缓存中。Web服务控制器调用响应构造引擎(步骤888),此后该过程终止。返回步骤894,如果高速缓存中的值与高速缓存密钥的值相匹配,则控制器从高速缓存检索来自于旧应用编程接口的输出(步骤898)。Web服务控制器然后调用响应构造引擎,以基于来自于旧应用编程接口的高速缓存的输出产生对Web服务请求的响应(步骤888),此后该过程终止。依照本发明的实施例,基于旧应用编程接口输出产生响应。然而,除了旧编程接口的输出之外,或者代替旧编程接口的输出,还可以基于其它的信息产生响应。例如,请求者可以请求产品的描述。在该例中,请求者所请求的产品的描述在数据库或其它数据存储设备中可用。该类型的请求是“只读”请求,其不要求为了产生对请求的响应而执行应用和/或从应用或应用接口产生输出。在这种情况下,响应构造引擎可以简单地从数据库或其它数据存储位置检索所请求的信息。响应构造引擎基于所检索的数据产生响应。因此,依照本发明的方面,可以在没有来自于旧应用编程接口和/或旧应用的任何输出的情况下产生响应。图9是依照本发明的一个示例性实施例,在接收到只读请求时XML代码的示例性说明。图9中实现的代码可以在诸如图3中的响应构造引擎370的响应构造引擎中实现。在一些情况下,Web服务请求是只读请求。例如,请求者可以请求存储在目录数据库中的目录项的描述。在这样的情况下,不要求执行旧应用。相反,只是从数据库检索所请求的数据并且将其发送至请求者。代码910是用于指导Web服务控制器由于没有要求处理业务逻辑而绕过执行旧应用的XML配置。相反,指导Web服务控制器调用响应构造引擎以产生提供所请求的数据的响应。在该说明性实施例中,代码920指定常量“responseOnly”来执行只读请求,而不是创建空业务逻辑命令来执行只取(fetchonly)请求或利用伪命令。依照本发明的方面,Web服务控制器可以从各种不同的数据源检索响应于Web服务请求的数据,该数据源包括但不限于数据库、只读存储器、诸如高速缓存的随机访问存储器、任何其它的内部数据存储设备、任何外部数据存储设备或任何外部系统。响应于接收到XML请求,响应构造引擎将确定对请求的Web服务响应是否可高速缓存。如果响应可高速缓存,则响应构造引擎会标识响应中可高速缓存的分段。这些可高速缓存的分段在高速缓存中形成响应于请求的一组高速缓存的内容。响应构造引擎标识高速缓存中响应于请求的一组高速缓存的内容,以形成所标识的高速缓存的内容组。响应构造引擎从高速缓存检索所标识的高速缓存的内容组。基于所标识的高速缓存的内容组产生对请求的响应,以便响应包括该高速缓存的内容组。如果高速缓存的内容组是对请求的完整的XML响应,则不会执行可定制的模板。然而,如果可高速缓存的内容组不是整个XML响应,则标识并且执行在高速缓存中不可用的、代表响应的动态部分的一组模板分段,以产生一组动态内容。动态内容组形成响应的动态部分。因而,依照该说明性例子所产生的响应将包括一组高速缓存的内容和一组动态内容。图10是依照本发明的一个示例性实施例,概述在产生响应时本发明的示例性操作的流程图。在说明性例子中,由图3中的响应构造引擎370实现该过程。响应构造引擎启动模板以产生响应(步骤1010)。响应构造引擎确定响应是否可高速缓存(步骤1015)。如果响应不可高速缓存,则响应构造引擎确定响应是否含有分段(步骤1020)。如果响应不含分段,则响应构造引擎执行模板(步骤1025),以产生对请求的XML响应(步骤1030)。将XML响应发送至Web服务控制器(步骤1035),此后该过程终止。现在返回步骤1015,如果响应可高速缓存,则响应构造引擎产生用于响应的高速缓存密钥(步骤1040)。响应构造引擎确定高速缓存中的任何值是否与高速缓存密钥的值相匹配(步骤1045)。如果高速缓存中没有值与高速缓存密钥相匹配,则响应构造引擎执行模板(步骤1025),以产生对请求的XML响应(步骤1030)。将XML响应发送至Web服务控制器(步骤1035),此后该过程终止。现在返回步骤1045,如果高速缓存中的值与高速缓存密钥相匹配,则响应构造引擎从高速缓存检索完整的高速缓存的响应(步骤1050),并且产生XML响应(步骤1030)。响应产生引擎将XML响应发送至Web服务控制器(步骤1035),此后该过程终止。现在返回步骤1020,如果响应含有分段,则响应构造引擎确定响应分段是否可高速缓存(步骤1055)。如果分段不可高速缓存,则响应产生引擎执行与响应分段关联的模板的分段(步骤1060),并且返回步骤1020来确定响应是否含有另外的分段。步骤1020和1055-1080形成迭代循环,其将持续执行,直到已经从高速缓存检索到响应中所有的分段,或是通过执行模板已经产生了响应中所有的分段。现在返回步骤1055,如果响应分段可高速缓存,则响应产生引擎产生与响应分段关联的高速缓存密钥(步骤1065)。响应构造引擎然后确定高速缓存中的任何值是否与高速缓存密钥的值相匹配(步骤1070)。如果高速缓存中没有值与高速缓存密钥相匹配,则响应构造引擎执行与分段响应关联的模板分段(步骤1080)。因而将该过程返回到步骤1020。该迭代循环将持续执行,直到已经从高速缓存检索到所有的响应分段,或是通过执行与响应分段关联的模板分段已经产生了所有的响应分段。现在返回步骤1070,如果高速缓存中的值与高速缓存密钥相匹配,则响应构造引擎从高速缓存检索响应分段(步骤1075)。因而将该过程返回到步骤1020。依照本发明的一个实施例,响应构造引擎确定最近产生的响应是否可高速缓存。换句话说,对关于响应是否包括一组可高速缓存的内容进行确定。一组可高速缓存的内容可以包括整个XML响应或者XML响应的一个或多个部分。如果对响应包括一组可高速缓存的内容进行了确定,则响应构造引擎将确定可高速缓存的内容组是否已存储在高速缓存中。如果可高速缓存的内容组并未存储在高速缓存中,则响应构造引擎会将可高速缓存的内容组存储在高速缓存中,以形成一组高速缓存的内容。依照分段高速缓存方法,由响应构造引擎将可高速缓存的内容存储在高速缓存中。因而,可以高速缓存整个XML响应、XML响应的分段,或者XML响应的多个分段。依照高速缓存策略,由响应产生引擎进行分段高速缓存。在用于响应构造引擎模板的XML配置中定义的高速缓存策略指定XML响应的高速缓存。高速缓存策略定义高速缓存哪些分段,以及通过执行模板分段动态地产生响应的哪些分段。图11是依照本发明的一个示例性实施例,概述在高速缓存Web服务响应时本发明的示例性操作的流程图。在这些说明性例子中,通过图3中的响应构造引擎370实现该过程。响应构造引擎确定响应是否可高速缓存(步骤1110)。如果响应可高速缓存,则响应构造引擎确定响应是否存储在高速缓存中(步骤1120)。如果响应存储在高速缓存中,则将高速缓存的响应发送至Web服务控制器(步骤1130),此后该过程终止。现在返回步骤1120,如果响应没有存储在高速缓存中,则响应产生引擎将响应存储在高速缓存中(步骤1140),并且将响应发送至Web服务控制器(步骤1130),此后该过程终止。现在返回步骤1110,如果响应不可高速缓存,则响应构造引擎确定响应是否含有分段(步骤1150)。如果响应不含分段,则发送响应(步骤1130),此后该过程终止。现在返回步骤1150,如果响应含有分段,则响应构造引擎确定分段是否可高速缓存(步骤1160)。如果分段不可高速缓存,则该过程返回步骤1150。如果分段可高速缓存,则响应构造引擎确定分段是否存储在高速缓存中(步骤1170)。如果分段存储在高速缓存中,则该过程返回步骤1150。如果分段没有存储在高速缓存中,则将分段存储在高速缓存中(步骤1180)。该过程然后返回步骤1150。步骤1150-1180形成迭代循环,其将持续执行,直到已将响应中所有的可高速缓存的分段存储在高速缓存中。图12是依照本发明的一个示例性实施例,在利用分段高速缓存产生响应时XML代码的示例性说明。代码1210是用于针对Web服务响应的分段高速缓存方法的XML配置的例子。代码1210和1240构成用于响应构造引擎的XML代码1250。在代码1210中,响应中包括两个单独的JavaServer_Pages分段。代码行1220是“ApplicationArea.jsp”分段,其是公共应用区。可以在其它的Web服务响应中重用该应用区,如代码行1220所示。其它的JavaServer_Pages分段是在代码行1230的“Show/Catalog.jsp”。该代码指导模板语言将来自于高速缓存的目录分段包括到Web服务响应中。在代码行1230中示出的“Show/Catalog.jsp”分段内,存在代码1240中示出的三个XML块。由JSP分段来表示每个XML块。代码1240中示出的Java_ServerPage分段中,要么一些可高速缓存,要么没有一个可高速缓存。对于可高速缓存的分段来说,可以创建高速缓存策略来高速缓存内容,从而使得下次提供JavaServer_Pages分段时,可以使用高速缓存版本。代码1260示出了这样的策略的例子。在高速缓存策略定义内,基于在请求中找到的“catalogId”参数,如代码1270所示,代码1240中所有的三个分段均可高速缓存。“catalogId”会是由服务所执行的命令返回的一个,或是XML服务请求映射出的参数。如代码1260所示,第一次执行具有catalogId123的服务的响应,还会执行每个JavaServer_Pages。然而,也会同时高速缓存三个分段。下一次接收另一请求,其包括对于catalogId123相同的JavaServer_Pages分段,将返回分段的高速缓存的版本,而不是执行模板语言来产生分段。本发明的方面提供了一种用于高速缓存Web服务响应的改进的方法。在处理Web服务请求并且产生Web服务响应期间,提供多个高速缓存点。可以通过旧应用编程接口动态地提供通过执行Web服务旧应用所产生的输出,或者从高速缓存检索输出。另外,还可以高速缓存被执行以产生对Web服务请求的XML响应的响应模板。此外,该模板支持分段高速缓存。因此,可以高速缓存整个响应,作为完整的响应。在可选方案中,可以高速缓存响应的一个或多个分段。最后,依照本发明的实施例,模板允许容易定制和修改模板,以及用于产生响应的高速缓存策略。以这种方式,本发明的方面提供了对Web服务响应的全部或部分高速缓存,而不限于非全即无方法来高速缓存响应。此外,本发明的实施例还提供了易于定制如何通过修改模板文本文件来产生响应的能力。已经出于说明和描述的目的给出了本发明的描述,并且不打算以所公开的形式穷举或限制本发明。对本领域的普通技术人员来说,很多修改和变形会是显而易见的。选择并且描述实施例是为了最好地解释本发明的原理、实际应用,并且使本领域其他的普通技术人员能够理解,对于不同实施例的本发明具有适于预期的特定用途的各种修改。权利要求1.一种用于产生对来自请求者的Web服务请求的响应的计算机实现的方法,所述计算机实现的方法包括响应于接收到Web服务请求,调用与所述请求关联的业务逻辑接口;执行可定制的模板以产生对所述请求的响应;确定所述响应是否包括一组可高速缓存的内容;响应于确定所述响应包括一组可高速缓存的内容,将所述可高速缓存的内容组存储在所述高速缓存中;以及将所述响应发送至所述请求者。2.根据权利要求1的计算机实现的方法,其中所述业务逻辑接口的输出是从至少一个高速缓存获得的,以及从所述业务逻辑接口导出的。3.根据权利要求1的计算机实现的方法,其中所述执行可定制的模板步骤进一步包括确定所述响应是否可高速缓存;响应于确定所述响应可高速缓存,标识所述高速缓存中的一组高速缓存的内容,其中所述高速缓存的内容响应于所述请求;以及检索所标识的高速缓存的内容组,其中所述响应包括所标识的高速缓存的内容组。4.根据权利要求3的计算机实现的方法,其进一步包括执行一组模板分段以产生一组动态内容,其中所述动态内容组形成所述响应的动态部分,并且其中所述响应包括所述高速缓存的内容组和所述动态内容组。5.根据权利要求1的计算机实现的方法,其中响应于确定对所述请求的完整的响应存储在所述高速缓存中,不执行所述可定制的模板。6.根据权利要求1的计算机实现的方法,其中所述业务逻辑接口是与Web服务应用关联的应用编程接口,并且基于所述应用编程接口的输出产生所述响应。7.根据权利要求1的计算机实现的方法,其进一步包括将所述Web服务请求映射到Web服务应用上,以产生关于所述业务逻辑接口的调用。8.根据权利要求1的计算机实现的方法,其中响应于确定所述输出可高速缓存,将所述业务逻辑接口的输出存储在所述高速缓存中。9.根据权利要求1的计算机实现的方法,其进一步包括通过更新代表所述可定制的模板的文本文件,修改所述响应的内容。10.根据权利要求1的计算机实现的方法,其中通过更新代表所述模板的文本文件,修改指定所述响应的高速缓存的高速缓存策略。11.根据权利要求1的计算机实现的方法,其中依照分段高速缓存方法,将所述可高速缓存的内容存储在所述高速缓存中。12.一种用于产生对来自请求者的Web服务请求的响应的系统,所述系统包括调用装置,响应于接收到Web服务请求,所述调用装置用于调用与所述请求关联的业务逻辑接口;执行装置,所述执行装置用于执行可定制的模板,以产生对所述请求的响应;确定装置,所述确定装置用于确定所述响应是否包括一组可高速缓存的内容;以及存储装置,响应于确定所述响应包括一组可高速缓存的内容,所述存储装置用于将所述可高速缓存的内容组存储在所述高速缓存中;发送装置,所述发送装置用于将所述响应发送至所述请求者。13.根据权利要求12的系统,其中所述业务逻辑接口的输出是从至少一个高速缓存获得的,以及从所述业务逻辑接口导出的。14.根据权利要求12的系统,其进一步包括确定装置,所述确定装置用于确定所述响应是否可高速缓存;标识装置,响应于确定所述响应可高速缓存,所述标识装置用于标识所述高速缓存中的一组高速缓存的内容,其中所述高速缓存的内容响应于所述请求;以及检索装置,所述检索装置用于检索所标识的高速缓存的内容组,其中所述响应包括所标识的高速缓存的内容组。15.根据权利要求14的系统,其进一步包括执行装置,所述执行装置用于执行一组模板分段,以产生一组动态内容,其中所述动态内容组形成所述响应的动态部分,并且其中所述响应包括所述高速缓存的内容组和所述动态内容组。16.根据权利要求12的系统,其中响应于确定对所述请求的完整的响应存储在所述高速缓存中,不执行所述可定制的模板。17.根据权利要求12的系统,其中依照分段高速缓存方法,将所述可高速缓存的内容存储在所述高速缓存中。18.根据权利要求12的系统,其进一步包括修改装置,所述修改装置用于通过更新代表所述可定制的模板的文本文件,修改所述响应的内容。19.根据权利要求12的系统,其中通过更新代表所述模板的文本文件,修改指定所述响应的高速缓存的高速缓存策略。全文摘要一种用于产生对来自请求者的Web服务请求的响应的计算机实现的方法、系统和计算机程序产品。响应于接收到Web服务请求,Web服务控制器调用与所述请求关联的业务逻辑接口。可以从高速缓存获得或是从所述业务逻辑接口导出所述业务逻辑接口的输出。执行可定制的模板以产生对所述请求的响应。对关于所述响应是否包括一组可高速缓存的内容进行确定。响应于确定所述响应包括一组可高速缓存的内容,将所述可高速缓存的内容组存储在所述高速缓存中。将所述响应发送至所述请求者。文档编号H04L29/06GK101035125SQ20071000430公开日2007年9月12日申请日期2007年1月22日优先权日2006年1月24日发明者J·范德尔古特,A·舒姆,D·胡西亚尔申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1