System for coalescing network request streams
AssigneePubwise, Lllp
InventorStephen F. Johnston, Jr.
Life of this patent
Estimating the term…
Abstract
A system and method for coalescing network request streams assigns groups of requests to independent coalescing machines, each of which separately processes its assigned group according to processing rules. The use of independent coalescers allows the system to be scaled nearly infinitely with a shared nothing architecture and operates fully at machine in-process speeds.
Claims18
A platform for coalescing a network request stream from one or more sources in communication within a network, the request stream comprising a plurality of requests including a primary request and a plurality of duplicate requests, the platform comprising:
- a load balancing module in communication with the network, the load balancing module configured for receiving the request stream and reading data within the plurality of the requests and categorizing the requests into a plurality of request groups based upon information fields within each request;
- a hash server configured for applying a consistent hashing algorithm to each of the request groups;
- a plurality of independent coalescer modules, each independent coalescer module comprising a local machine with a local memory configured to receive from the load balancing module an assigned request group based on its applied hash and process the assigned request group according to a set of rules to determine whether the primary request is present within its assigned request group and to hold all other requests within the assigned request group in its local memory until the primary request is identified and accepted for delivery, wherein the plurality of coalescer modules have a shared nothing architecture;
- and
- a system backend configured for delivering the primary request identified according to the set of rules to a destination platform;
- wherein the load balancing module is executed on a processor.
A computer program product comprising a non-transitory readable medium including computer executable code-that, when executed on one or more computing devices, performs coalescing of a network request stream from one or more sources, the request stream comprising a plurality of requests including a primary request and a plurality of duplicate requests by:
- receiving the request stream at a load balancing module and reading data within the plurality of the requests and categorizing the requests into request groups based upon information fields within each request;
- applying a consistent hashing algorithm to each of the request groups;
- distributing the request groups among a plurality of independent coalescer modules based on its applied hash, each independent coalescer module comprising a local machine with a local memory within a shared nothing architecture, each coalescer module configured to receive an assigned request group;
- processing the assigned request group according to a set of rules to determine whether the primary request is present within the assigned request group;
- holding all other requests within the assigned request group in the local memory of the assigned coalescer module until the primary request is identified;
- and
- delivering the primary request identified according to the set of rules to a destination platform.
Dependencies are inferred from the claim text.