Systems and methods that employ correlated synchronous-on-asynchronous processing
First Claim
1. A Web-based system that asynchronously processes synchronous requests, comprising:
- an interface component that receives a synchronous request; and
a processing component that parses the synchronous request across a plurality of Web services for asynchronous processing, the processing component aggregates asynchronous results from the plurality of Web services and returns a synchronous result.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a novel technique for Web-based asynchronous processing of synchronous requests. The systems and methods of the present invention utilize a synchronous interface in order to couple with systems that synchronously communicate (e.g., to submit queries and receive results). The interface enables reception of synchronous requests, which are queued and parsed amongst subscribed processing servers within a server farm. Respective servers can serially and/or concurrently process the request and/or portions thereof via a dynamic balancing approach. Such approach distributes the request to servers based on server load, wherein respective portions can be re-allocated as server load changes. Results can be correlated with the request, aggregated, and returned such that it appears to the requester that the request was synchronously serviced. The foregoing mitigates the need for clients to perform client-side aggregation of asynchronous results.
56 Citations
34 Claims
-
1. A Web-based system that asynchronously processes synchronous requests, comprising:
-
an interface component that receives a synchronous request; and
a processing component that parses the synchronous request across a plurality of Web services for asynchronous processing, the processing component aggregates asynchronous results from the plurality of Web services and returns a synchronous result. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system that employs dynamic load balancing to asynchronously process synchronous requests, comprising:
-
a processing engine that posts synchronous requests in a message box that is accessed by one or more subscribed Web-based services that asynchronously process the synchronous requests;
an aggregating component that correlates asynchronous results with the synchronous request and groups the correlated results; and
an output component that returns the grouped results as a synchronous result. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method that facilitates Web-based asynchronous processing of synchronous requests, comprising:
-
accepting a synchronous request;
dynamically delineating the synchronous request across process engines based on process engine load;
correlating asynchronous results and errors; and
returning the correlated results as a synchronous result. - View Dependent Claims (25, 26, 27)
-
-
28. A method for asynchronously processing a synchronous request on a Web service, comprising:
-
transmitting a synchronous request;
distributing the synchronous request across severs within a server farm;
aggregating asynchronous results with an associated synchronous request; and
returning the aggregated results as a synchronous result. - View Dependent Claims (29, 30, 31)
-
-
32. A data packet transmitted between two or more computer components that facilitates Web-based asynchronous processing of synchronous requests, comprising:
a component that receives a synchronous request from a client, a component that posts the request in a queue, a component that parses the stored synchronous request across servers within a farm of servers based on a dynamic balancing technique, a component that correlates asynchronous results with the synchronous request, and a component that returns the asynchronous results to the client as a synchronous result.
-
33. A computer readable medium storing computer executable components to dynamically processes a synchronous request via a Web service that utilizes load-based asynchronous processing, comprising:
-
a component that dynamically distributes the synchronous request across processing engines based on load;
a component that dynamically re-distributes the synchronous request as processing engine load changes;
a component that correlates asynchronous results with the synchronous request; and
a component that returns the asynchronous results as a synchronous result.
-
-
34. A Web-based system that employs dynamic asynchronous processing to service synchronous requests, comprising:
-
means for receiving a synchronous request;
means for posting the synchronous request;
means for dynamically distributing the synchronous request across processing engines based at least on process engine load;
means for correlating asynchronous results with the synchronous request; and
means for returning the asynchronous results as a synchronous result.
-
Specification