CN101388892A - 用于在客户端侧聚集异步分段请求的方法和装置 - Google Patents
用于在客户端侧聚集异步分段请求的方法和装置 Download PDFInfo
- Publication number
- CN101388892A CN101388892A CN200810214753.7A CN200810214753A CN101388892A CN 101388892 A CN101388892 A CN 101388892A CN 200810214753 A CN200810214753 A CN 200810214753A CN 101388892 A CN101388892 A CN 101388892A
- Authority
- CN
- China
- Prior art keywords
- asynchronous
- client
- thread
- server stores
- output
- 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
Links
Images
Classifications
-
- 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/01—Protocols
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- 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/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了用于在客户端侧聚集异步分段请求的方法和装置。具体而言,异步聚集器通过利用具有唯一标识符的占位符代替原始请求线程中的异步请求,为每个异步请求创建新线程,编写脚本来请求异步请求输出并且将所述原始请求和脚本返回至客户端来转移获取和聚集异步响应的负担。每个新线程独立运行,并且当其完成时,将输出置于服务器存储中。所述脚本接着当输出可用时从所述服务器存储请求每个输出以填充所述占位符。
Description
技术领域
本发明总体上涉及计算机数据处理,尤其涉及分布式计算机系统中请求的异步执行。
背景技术
客户端使用分布式计算机环境来执行跨多个应用的各种任务。对于典型任务而言,客户端向分布式计算机环境发送请求,所述分布式计算机环境向所述客户端返回响应。虽然这似乎足够简单,但是在执行这样的请求中实际上包含若干中间步骤。首先,用户或应用通过向应用服务器发送请求来发起所述客户端请求。所述应用服务器是用作客户端和构成所述分布式计算机环境的其它资源之间的媒介的计算机。所述应用服务器可以执行诸如验证客户端的安全证书和确定所述分布式计算机环境上的哪些资源适于执行客户端请求之类的任务。第二,所述应用服务器代表所述客户端将所述请求转发至适当的资源。第三,当所述请求在适当的资源上执行之后,所述应用服务器向所述客户端发送响应。
诸如EDGE SIDE INCLUDE(ESI)、DELTA ENCODING之类的特定分段标记和组装技术以及其它分段标记和组装引擎允许在应用服务器处的特定环境下进行请求分段(fragmentation)。通常,能够将请求划分为多个较小的任务或“取指令(fetches)”并且跨多个资源进行分布。在执行了所有取指令之后,分段响应被重新组装并返回给客户端。分段允许资源得到更为有效的使用以及分布式计算机环境中较少的循环次数。一旦执行了所有分段,就将所述响应聚集起来并返回给客户端。
当分段顺序执行时,从进行请求的时间直至分段响应被聚集并返回至客户端会存在长的延迟。为了缩短执行一组分段所需的整体时间,已经提出了允许异步执行请求分段的方法。利用异步执行,能够同时或以任意顺序执行分段,减少执行分段请求所需的整体时间。
BEA系统有限公司所拥有的美国专利No.7,003,570中公开了一个分派异步线程的示例。‘570专利公开了一种在提供请求分段异步处理的应用服务器上运行的系统。在执行了所有请求分段并且向应用服务器返回响应之后,对响应进行聚集并将其从所述应用服务器返回至客户端。但是聚集在应用服务器进行,并且占用了应用服务器系统资源。
除了占用应用服务器系统资源之外,当前的异步分段执行系统要求客户端在接收响应之前进行等待,直至所有分段得以执行和聚集。根据原始请求的复杂度,客户端可能在接收响应之前长时间等待。其间,应用服务器被执行线程所占用,直至整个请求得以执行。当在向客户端返回响应之前执行多个分段并且聚集分段响应时,该延迟是特别严重的。因此,需要一种方法来释放执行线程并转移获取和聚集对客户端的响应的负担,释放应用服务器资源,同时将在原始请求中所包括的任意上下文保持在分段中。
发明内容
异步聚集器释放原始执行线程并且转移获取和聚集从服务器到客户端的异步响应的负担。这通过以下步骤实现:为每个异步请求的执行创建新线程,向服务器存储注册每个异步请求的异步包含物(include),利用包含唯一标识符的占位符代替响应中的异步请求内容,编写代替每个异步包含物的Javascript以使得客户端能够请求异步包含物内容,并且向所述客户端返回包含所述Javascript的经修改的响应输出。每个新线程独立运行,并且当其完成时,在服务器存储中置入输出。接着所述Javascript从所述服务器存储请求每个输出来填充所述占位符。
附图说明
图1描绘了示例性的计算机网络;
图2描绘了包含异步聚集器的分布式计算机系统上的示例性存储器;
图3描绘了Java Servlet容器的流程图;
图4描绘了服务器存储处理的流程图;
图5描绘了Javascript处理的流程图;和
图6描绘了异步聚集器处理的概述示图。
具体实施方式
本发明的原理可应用于各种计算机硬件和软件配置。这里所使用的术语“计算机硬件”或“硬件”是指能够接受数据、对数据执行逻辑操作、存储数据或显示数据的任意机器或装置,并且并不局限于包括处理器和存储器;术语“计算机软件”或“软件”是指可操作以使得计算机硬件执行操作的任意指令集合。这里所使用的术语“计算机”并不局限于包括硬件和软件的任意可用组合,并且“计算机程序”或“程序”并不局限于包括可操作以使得计算机硬件接受数据、对数据执行逻辑操作、存储数据或显示数据的任意软件。并且,计算机程序通常可由多个较小程序单元组成,并不局限于包括子程序、模块、函数、方法和过程。因此,本发明的功能可以在多个计算机和计算机程序中分布。然而,本发明被最佳地描述为单个计算机程序,所述计算机程序配置一个或多个通用计算机并使其能够实施本发明的各新颖方面。出于说明的目的,所发明的计算机程序将被称作“异步聚集器”。
此外,以下参考图1所示的硬件设备的示例性网络对所述异步聚集器进行描述。“网络”包括通过诸如互联网之类的通信介质彼此耦合并进行通信的任意数目的硬件设备。“通信介质”并不局限于包括硬件或软件能够通过其传送数据的任意物理、光、电磁或其它介质。出于说明的目的,示例性网络100仅具有有限数目的节点,包括工作站计算机105、工作站计算机110、服务器计算机115和持久性存储120。网络连接125包括使网络节点105-120之间能够通信所必需的所有硬件、软件和通信介质。除非在下文中另外指出,所有网络节点使用公共可用的协议或消息传送服务来通过网络连接125彼此进行通信。
典型地,异步聚集器200存储在存储器中,所述存储器在图2中示意性地表示为存储器220。这里所使用的术语“存储器”并不局限于包括任意易失性或持久性介质,诸如计算机能够在一段时间内在其中存储数据或软件的电路、磁盘或光盘。如图2所示,存储器220跨多种介质进行分布,所述多种介质即客户端210、应用服务器层250和后端服务器层290。因此,图2中仅包括便于说明的内容并且无需反映存储器220的任意特定物理实施例。虽然如图2所示,但是存储器220可包括其它数据和程序。作为异步聚集器200的特定输入,存储器220可包括客户端210上的浏览器212和后端服务器层290上的目标资源291。异步聚集器200具有三个部分,位于应用服务器层250上的Java Servlet容器300和通用Java服务600,以及客户端210上的Javascript 500。Java Servlet300具有四个子部分:请求分配器301、过滤器302、脚本编写器303和异步Bean 304。通用Java服务600具有用于存储的存储器分配,服务器存储601。
图3是描绘Java Servlet容器300的逻辑的流程图。虽然Java Servlet容器300在这里被描述为具有四个子部分(见图2)的单个应用,但是Java Servlet容器300可以是相关servlet和应用的集合,所述相关servlet和应用一起运行以执行这里所描述的功能。当客户端向应用服务器发送原始请求时,在原始线程上开始执行所述原始请求。所述原始线程是应用服务器上的Java Servlet容器300所接收的servlet/jsp。在应用服务器层250接收原始线程时(312)Java Servlet容器300开始(310),并且Java Servlet容器300确定所述原始请求是否包含异步包含物(314)。如果不包括,Java Servlet容器300则正常处理所述请求而不利用任何异步行为(315)。如果所述请求包含异步包含物,则调用请求分配器301(316)。
请求分配器301执行所述请求(318)。当请求分配器301执行所述请求时,其执行初始servlet/jsp资源以及作为所述servlet/jsp一部分的异步包含物。请求分配器301利用包含唯一标识符的占位符代替所述原始请求中的异步包含物的响应输出(320)。所述占位符的作用是在客户端从一般服务存储(服务器存储601)接收异步包含物内容时指示所述异步包含物内容将存在于何处。当所述客户端接收异步包含物内容时,所述占位符将被来自执行所述异步包含物的实际响应输出所代替。
请求分配器301使用过滤器302复制所述原始请求和响应对象(322)并且将副本传送至所述异步包含物(324)。由于所述请求和响应对象并非被设计为在多个线程上同时使用,所以这是必需的。所述请求对象表示来自客户端的用以执行资源的请求。所述响应对象表示响应于所述请求发送回所述客户端的内容。接下来,请求分配器301为异步包含物创建唯一标识符(326)并且向服务器存储注册所述唯一标识符(328)。注册意味着这样的过程,其中原始线程在执行异步包含物之前向服务器存储注册唯一标识符(或标记)来利用所述唯一标识符(或标记)指示某个异步包含物将要发生。
注册分配器301调用脚本编写器303编写用于所述异步包含物的内容和包含物Javascript(330)。Javascript包含AJAX类型的请求,所述AJAX类型的请求包含对应于所述异步包含物的唯一标识符,从而能够在稍后在所述占位符上填充响应。请求分配器301接着使用异步Bean304开始用于所述异步包含物的新线程(332)。所述新线程被发送到指定的异步资源。一旦完成编写占位符和Javascript,就编写来自所述原始请求的任何附加内容,完成所述原始请求并返回所述线程。所述Javascript将在所述客户端上透明运行以便从服务器存储获取对于所述异步包含物的响应。
Java Servlet容器300接着确定原始请求中是否存在另一个异步包含物(334)。如果原始请求中存在另一个异步包含物,则Java Servlet容器300进行至步骤320。如果不存在,则Java Servlet容器300将所述原始请求发送至客户端(336)。Java Servlet容器300确定异步包含物是否已完成处理(338)。如果异步包含物已经完成处理,则Java Servlet容器300利用服务器存储从所述异步包含物发布响应输出(342)。如果没有完成,Java Servlet容器300进行等待(340)并返回步骤338。JavaServlet容器300确定是否还有异步包含物没有完成处理(344)。如果有,则Java Servlet容器300进行至步骤338。如果没有,则Java Servlet容器停止(350)。
图4是描绘服务器存储处理400的逻辑的流程图。服务器存储处理开始(402)并接收具有相关联的唯一标识符的异步请求将发生的通知(410)。服务器存储601(见图2)接收异步响应输出的内容(412)。服务器存储处理400确定是否已经从客户端接收了异步输出请求(414)。如果没有,则服务器存储处理400等待(416)并返回步骤414。如果已经接收到异步输出请求,则服务器存储处理400从服务器存储601释放异步请求输出(418)。服务器存储处理400确定是否存在另一个通知(420)。如果有,则服务器存储处理返回步骤412,而如果没有,则停止(430)。
图5是描绘Javascript 500的流程图逻辑的流程图。Javascript 500当在客户端210处被接收时开始(510)并且在浏览器212上显示用于请求分段响应的占位符(512)。Javascript 500调用通用Java服务600(514)并查询请求分段响应(516)。如果请求分段响应未准备好,则Javascript500等待预先确定的周期(520)并进行至步骤514。如果请求分段响应已准备好,则Javascript 500获取所述响应(522),利用所述响应代替所述占位符(524),刷新浏览器212上的HTML显示(526)并停止(528)。
图6描绘了分布式存储器700中请求的传播。标号701表示客户端210上的浏览器212向Java Servlet容器300所进行的原始请求。在所述原始请求中识别出三个异步包含物,并且调用请求分配器301。提取所述异步包含物并且将占位符插入所述原始请求中。标号707表示被返回客户端的具有用于异步包含物的占位符的原始请求。在向每个异步包含物传送原始请求以及响应对象的副本之后,标号702表示具有由过滤器302所创建的唯一标识符的三个异步包含物。向服务器存储601注册所述唯一标识符。标号703表示异步Bean 304所创建的新线程。标号704表示向通用Java服务600注册三个新线程。标号705和706表示请求分配器301调用脚本编写器303为新线程编写内容和包含物Javascript。标号708和709表示通用Java服务600在执行所述新线程的异步包含物时异步访问后端服务器层290上的资源。对所述三个异步包含物的响应被存储在服务器存储601中。标号710表示对响应的客户端请求,且标号711表示异步包含物响应被发送至客户端210上的Javascript 500。
已经在图中示出并在以上描述了本发明的优选形式,但是所述优选形式的变化对于本领域技术人员将是显而易见的。之前的描述仅用于说明,并且本发明不应当被认为局限于所示出和描述的特定形式。本发明的范围应当仅由所附权利要求的语言进行限定。
Claims (6)
1.一种用于异步执行请求的计算机实现的处理,所述计算机实现的处理包括:
在应用服务器处从客户端接收原始请求线程;
执行所述原始请求;
利用占位符代替所述原始请求中的异步部分;
针对具有唯一标识符的异步部分开始新的线程;
在服务器存储处注册所述唯一标识符;
编写用于从所述服务器存储获取新线程输出的脚本;
将所述新线程输出发送至所述服务器存储;
利用所述脚本将所述原始请求线程返回至所述客户端;和
当在所述服务器存储处接收到所述新线程输出时,使用所述脚本从所述服务器存储获取所述新线程输出,并且利用所述新线程输出代替所述原始请求中的所述占位符。
2.如权利要求1所述的计算机实现的处理,进一步包括:
从所述原始线程创建请求对象的第一副本和响应对象的第二副本。
3.如权利要求1所述的计算机实现的处理,其中所述异步部分是异步包含物。
4.一种用于异步执行请求的装置,所述装置包括:
处理器;
连接到所述处理器的存储器;
计算机存储器中的服务;
所述存储器中的程序,其可操作用来:
在应用服务器处从客户端接收原始请求线程;
执行所述原始请求;
利用占位符代替所述原始请求的异步部分;
针对具有唯一标识符的异步部分开始新的线程;
在服务器存储处注册所述唯一标识符;
编写用于从所述服务器存储获取新线程输出的脚本;
将所述新线程输出发送至所述服务器存储;
利用所述脚本将所述原始请求线程返回至所述客户端;
其中当在所述服务器存储处接收到所述新线程输出时,所述脚本将为所述客户端从所述服务器存储获取所述新线程输出,并且利用所述新线程输出代替所述原始请求线程中的所述占位符。
5.如权利要求4所述的装置,其中所述程序进一步包括:
从所述原始线程创建请求对象的第一副本和响应对象的第二副本。
6.如权利要求4所述的装置,其中所述异步部分是异步包含物。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/846,423 | 2007-08-28 | ||
US11/846,423 US8032587B2 (en) | 2007-08-28 | 2007-08-28 | Method and apparatus for client-side aggregation of asynchronous fragmented requests |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101388892A true CN101388892A (zh) | 2009-03-18 |
CN101388892B CN101388892B (zh) | 2012-01-11 |
Family
ID=40409191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810214753.7A Expired - Fee Related CN101388892B (zh) | 2007-08-28 | 2008-08-27 | 用于在客户端侧聚集异步分段请求的方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8032587B2 (zh) |
CN (1) | CN101388892B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106034137A (zh) * | 2015-03-09 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 用于分布式系统的智能调度方法及分布式服务系统 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9069870B2 (en) * | 2006-07-12 | 2015-06-30 | International Business Machines Corporation | Client-side aggregation of context-sensitive request results where results for aggregation are asynchronously produced by multiple servers |
US20080127234A1 (en) * | 2006-09-19 | 2008-05-29 | International Business Machines Corporation | Methods, systems, and computer program products for a remote request dispatcher extension framework for container based programming models |
US7698411B2 (en) * | 2007-08-22 | 2010-04-13 | International Business Machines Corporation | Selectively delivering cached content or processed content to clients based upon a result completed percentage |
US8032587B2 (en) | 2007-08-28 | 2011-10-04 | International Business Machines Corporation | Method and apparatus for client-side aggregation of asynchronous fragmented requests |
US9432243B2 (en) * | 2007-08-22 | 2016-08-30 | International Business Machines Corporation | Re-using asynchronous server-side results generated for a request context of one client to satisfy a request context of a different client |
DE112010004847T5 (de) | 2009-12-17 | 2012-11-08 | International Business Machines Corporation | Verwalteter Kanal für Asynchrone Anforderungen |
US8296411B2 (en) | 2010-03-01 | 2012-10-23 | International Business Machines Corporation | Programmatically determining an execution mode for a request dispatch utilizing historic metrics |
US20130046878A1 (en) * | 2011-08-15 | 2013-02-21 | Lukas Fryc | Asynchronous request interception for testing a request life-cycle |
US20130173662A1 (en) * | 2012-01-03 | 2013-07-04 | International Business Machines Corporation | Dependency based prioritization of sub-queries and placeholder resolution |
US9400734B2 (en) * | 2013-09-15 | 2016-07-26 | Sandisk Technologies Llc | Apparatuses and methods for generating event codes including event source |
CN107295052B (zh) | 2016-04-11 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 一种业务处理方法及装置 |
Family Cites Families (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5617570A (en) * | 1993-11-03 | 1997-04-01 | Wang Laboratories, Inc. | Server for executing client operation calls, having a dispatcher, worker tasks, dispatcher shared memory area and worker control block with a task memory for each worker task and dispatcher/worker task semaphore communication |
US5548723A (en) * | 1993-12-17 | 1996-08-20 | Taligent, Inc. | Object-oriented network protocol configuration system utilizing a dynamically configurable protocol stack |
US5832219A (en) * | 1994-02-08 | 1998-11-03 | Object Technology Licensing Corp. | Distributed object networking service |
JP3160149B2 (ja) * | 1994-05-13 | 2001-04-23 | 株式会社日立製作所 | ディスク制御装置の無停止プログラム変更方法およびディスク制御装置 |
US5956509A (en) * | 1995-08-18 | 1999-09-21 | Microsoft Corporation | System and method for performing remote requests with an on-line service network |
US5944779A (en) * | 1996-07-02 | 1999-08-31 | Compbionics, Inc. | Cluster of workstations for solving compute-intensive applications by exchanging interim computation results using a two phase communication protocol |
US6112243A (en) * | 1996-12-30 | 2000-08-29 | Intel Corporation | Method and apparatus for allocating tasks to remote networked processors |
US6643708B1 (en) * | 1998-10-29 | 2003-11-04 | International Business Machines Corporation | Systems, methods and computer program products for chaining Java servlets across networks |
US6665704B1 (en) * | 1999-06-18 | 2003-12-16 | Sun Microsystems, Inc. | Bounding delays and reducing threading overheads in caching |
WO2002021413A2 (en) * | 2000-09-05 | 2002-03-14 | Zaplet, Inc. | Methods and apparatus providing electronic messages that are linked and aggregated |
US6963917B1 (en) * | 2000-10-20 | 2005-11-08 | International Business Machines Corporation | Methods, systems and computer program products for policy based distribution of workload to subsets of potential servers |
AU2002236435A1 (en) * | 2000-10-26 | 2002-05-21 | Prismedia Networks, Inc. | Method and apparatus for real-time parallel delivery of segments of a large payload file |
US7028306B2 (en) * | 2000-12-04 | 2006-04-11 | International Business Machines Corporation | Systems and methods for implementing modular DOM (Document Object Model)-based multi-modal browsers |
US7398216B2 (en) * | 2000-12-12 | 2008-07-08 | Lockheed Martin Corporation | Network dynamic service availability |
US6651143B2 (en) * | 2000-12-21 | 2003-11-18 | International Business Machines Corporation | Cache management using a buffer for invalidation requests |
US6961776B1 (en) * | 2000-12-22 | 2005-11-01 | Nortel Networks Limited | Architecture for multiple channel access to applications |
NL1017388C2 (nl) * | 2001-02-16 | 2002-08-19 | Marc Van Oldenborgh | Organisch datanetwerk met een dynamische topologie. |
US7502833B2 (en) * | 2001-05-11 | 2009-03-10 | International Business Machines Corporation | Method for dynamically integrating remote portlets into portals |
US20020184145A1 (en) * | 2001-05-31 | 2002-12-05 | Sun Microsystems, Inc. | Methods and system for integrating XML based transactions in an electronic invoice presentment and payment environment |
JP2003029989A (ja) * | 2001-07-16 | 2003-01-31 | Matsushita Electric Ind Co Ltd | 分散処理システムおよびジョブ分散処理方法 |
US6961760B2 (en) * | 2001-07-17 | 2005-11-01 | International Business Machines Corporation | Transforming data automatically between communications parties in a computing network |
US20030063122A1 (en) * | 2001-07-27 | 2003-04-03 | Cichowlas Bruce William | Method, system, and computer program product for developing and using stateful web applications |
US7398301B2 (en) * | 2001-08-04 | 2008-07-08 | Kontiki, Inc. | Method and apparatus for facilitating distributed delivery of content across a computer network |
US7536472B2 (en) * | 2001-09-13 | 2009-05-19 | Network Foundation Technologies, Llc | Systems for distributing data over a computer network and methods for arranging nodes for distribution of data over a computer network |
US6985939B2 (en) * | 2001-09-19 | 2006-01-10 | International Business Machines Corporation | Building distributed software services as aggregations of other services |
US7035944B2 (en) * | 2001-09-19 | 2006-04-25 | International Business Machines Corporation | Programmatic management of software resources in a content framework environment |
US7003570B2 (en) * | 2001-10-05 | 2006-02-21 | Bea Systems, Inc. | System for integrating java servlets with asynchronous messages |
US7000238B2 (en) * | 2001-10-10 | 2006-02-14 | Borland Software Corporation | Development system providing extensible remoting architecture |
CN100504853C (zh) * | 2001-10-24 | 2009-06-24 | Bea系统公司 | 同步应用程序数据并将该数据部署到远程服务器的方法 |
KR20030035138A (ko) * | 2001-10-30 | 2003-05-09 | 한국전자통신연구원 | 클라이언트-서버 기반 네트워크 가상환경에서 상태정보의전송 방법 |
US7447731B2 (en) * | 2001-12-17 | 2008-11-04 | International Business Machines Corporation | Method and apparatus for distributed application execution |
US7127713B2 (en) * | 2002-01-11 | 2006-10-24 | Akamai Technologies, Inc. | Java application framework for use in a content delivery network (CDN) |
US20030145048A1 (en) * | 2002-01-18 | 2003-07-31 | Bea Systems, Inc. | System and method for HTTP request preprocessing for servlets and application servers |
US7693955B2 (en) * | 2002-02-22 | 2010-04-06 | Bea Systems, Inc. | System and method for deploying a web service |
US7162687B2 (en) * | 2002-05-31 | 2007-01-09 | Sun Microsystems, Inc. | JSP tag libraries and web services |
US7209915B1 (en) * | 2002-06-28 | 2007-04-24 | Microsoft Corporation | Method, system and apparatus for routing a query to one or more providers |
US8631142B2 (en) * | 2002-08-07 | 2014-01-14 | International Business Machines Corporation | Inserting targeted content into a portlet content stream |
JP2004109688A (ja) * | 2002-09-19 | 2004-04-08 | Fuji Xerox Co Ltd | 帯電部材の再生方法、帯電部材、及び帯電部材の再生装置 |
US7243352B2 (en) * | 2002-11-27 | 2007-07-10 | Sun Microsystems, Inc. | Distributed process runner |
US7146563B2 (en) * | 2003-05-29 | 2006-12-05 | International Business Machines Corporation | Maintaining screen and form state in portlets |
US7281217B2 (en) * | 2003-05-30 | 2007-10-09 | International Business Machines Corporation | System and method for user driven interactive application integration |
US7450524B2 (en) * | 2003-06-30 | 2008-11-11 | Kontiki, Inc. | Method and apparatus for determining network topology in a peer-to-peer network |
CN1577251B (zh) * | 2003-07-28 | 2012-07-18 | 国际商业机器公司 | 小服务器程序的远程协作方法和系统 |
JP4709481B2 (ja) * | 2003-07-31 | 2011-06-22 | インターナショナル・ビジネス・マシーンズ・コーポレーション | サーバ、情報処理方法およびプログラム |
US8260741B2 (en) * | 2003-08-15 | 2012-09-04 | Intel Corporation | System and method for utilizing a modular operating system (OS) resident agent allowing an out-of-band server management |
FR2863127A1 (fr) * | 2003-12-02 | 2005-06-03 | Canon Kk | Procedes et dispositifs pour la delivrance asynchrone de donnees numeriques |
US7769802B2 (en) * | 2003-12-04 | 2010-08-03 | Microsoft Corporation | Systems and methods that employ correlated synchronous-on-asynchronous processing |
US7614052B2 (en) * | 2004-01-09 | 2009-11-03 | Nexaweb Technologies Inc. | System and method for developing and deploying computer applications over a network |
US7502760B1 (en) * | 2004-07-19 | 2009-03-10 | Amazon Technologies, Inc. | Providing payments automatically in accordance with predefined instructions |
US7840707B2 (en) * | 2004-08-18 | 2010-11-23 | International Business Machines Corporation | Reverse proxy portlet with rule-based, instance level configuration |
US7774332B2 (en) * | 2005-04-12 | 2010-08-10 | International Business Machines Corporation | Enabling interactive integration of network-accessible applications in a content aggregation framework |
US20070112913A1 (en) * | 2005-11-17 | 2007-05-17 | Bales Christopher E | System and method for displaying HTML content from portlet as a page element in a communites framework |
US20070143460A1 (en) * | 2005-12-19 | 2007-06-21 | International Business Machines Corporation | Load-balancing metrics for adaptive dispatching of long asynchronous network requests |
US7627662B2 (en) * | 2006-03-23 | 2009-12-01 | First Data Corporation | Transaction request processing system and method |
US9069870B2 (en) * | 2006-07-12 | 2015-06-30 | International Business Machines Corporation | Client-side aggregation of context-sensitive request results where results for aggregation are asynchronously produced by multiple servers |
US20080071922A1 (en) * | 2006-09-19 | 2008-03-20 | International Business Machines Corporation | Methods, systems, and computer program products to transparently dispatch requests to remote resources in a multiple application server environment |
US20080127234A1 (en) * | 2006-09-19 | 2008-05-29 | International Business Machines Corporation | Methods, systems, and computer program products for a remote request dispatcher extension framework for container based programming models |
US9432243B2 (en) * | 2007-08-22 | 2016-08-30 | International Business Machines Corporation | Re-using asynchronous server-side results generated for a request context of one client to satisfy a request context of a different client |
US8032587B2 (en) | 2007-08-28 | 2011-10-04 | International Business Machines Corporation | Method and apparatus for client-side aggregation of asynchronous fragmented requests |
-
2007
- 2007-08-28 US US11/846,423 patent/US8032587B2/en not_active Expired - Fee Related
-
2008
- 2008-08-27 CN CN200810214753.7A patent/CN101388892B/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106034137A (zh) * | 2015-03-09 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 用于分布式系统的智能调度方法及分布式服务系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101388892B (zh) | 2012-01-11 |
US20090063618A1 (en) | 2009-03-05 |
US8032587B2 (en) | 2011-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101388892B (zh) | 用于在客户端侧聚集异步分段请求的方法和装置 | |
CN107018042B (zh) | 用于在线服务系统的追踪方法及追踪系统 | |
CN101997854B (zh) | 一种提供数据服务的处理系统及方法 | |
CN110502212B (zh) | 一种面向多语言的高并发在线开发支撑方法 | |
CN103401909B (zh) | 基于bs的数据交互方法与系统、客户端及服务器 | |
CN101739296B (zh) | 数据处理系统和方法 | |
US8769100B2 (en) | Method and apparatus for cluster data processing | |
CN104011701A (zh) | 内容传送网络 | |
CN103209223A (zh) | 分布式应用会话信息共享方法、系统和应用服务器 | |
CN102932472A (zh) | 一种数据处理方法以及通信系统 | |
CN112019597B (zh) | 分布式数据接收系统及数据接收方法 | |
CN109977822B (zh) | 数据供给方法、模型训练方法、装置、系统、设备和介质 | |
EP3786808B1 (en) | Real time exchange of update information over a network using web sockets coupled to a message queue | |
CN109104368B (zh) | 一种请求连接方法、装置、服务器及计算机可读存储介质 | |
CN111290965B (zh) | 一种测试方法、装置、计算机设备和存储介质 | |
CN109603149A (zh) | 数据同步方法及装置 | |
CN113067866A (zh) | 异构系统间的批量文件传输方法及装置 | |
CN109587997A (zh) | 分配服务器位置的方法、电子设备及计算机可读存储介质 | |
CN103078805B (zh) | 使Zookeeper的读性能支持水平扩展的系统和方法 | |
CN106708583A (zh) | 应用加载方法和装置 | |
US20080082473A1 (en) | Peer based event conversion | |
CN105049463A (zh) | 分散数据库、数据共享方法、用于分散数据库的装置 | |
CN109582242B (zh) | 级联存储阵列系统的地址确定方法、装置、电子设备 | |
CN112269803B (zh) | 数据集填充方法及系统 | |
CN101640667B (zh) | 流程执行方法、流程执行系统及其配置设备和方法 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120111 Termination date: 20160827 |
|
CF01 | Termination of patent right due to non-payment of annual fee |