US2016337481A1PendingUtilityA1

Multiplexing web requests for improved performance

55
Assignee: REDFIN CORPPriority: Oct 5, 2012Filed: Jun 30, 2016Published: Nov 17, 2016
Est. expiryOct 5, 2032(~6.2 yrs left)· nominal 20-yr term from priority
G06Q 30/0613G06F 40/134H04W 4/029H04L 67/02G06Q 30/0623G06Q 50/16G06Q 30/0257G06F 16/00G06F 7/06G06Q 10/1093H04L 67/42G06F 16/9537
55
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A request multiplexing system is described herein that takes multiple asynchronous requests from a client to multiple server endpoints and multiplexes the requests at the client into a single request to a new server endpoint. The new endpoint demultiplexes the requests at the server, calls the pre-existing separate endpoints to get the correct response for each request, combines the responses into a single multiplexed response, and returns the combined response to the client. On the client side, the response data is split up and handed to the appropriate handlers. From the components' points of view and those of the endpoints on the server, the requests occur just as they originally may. However, new logic on both the client and the server has packaged and unpackaged requests and responses appropriately to accomplish without component modification what formerly involved extensive coordination between developers of various components.

Claims

exact text as granted — not AI-modified
1 - 10 . (canceled) 
     
     
         11 . A computer-implemented method to process at a server multiple asynchronous requests in a batch from a client, the method comprising:
 receiving at a server batch endpoint a batch request to handle multiple individual client requests; identifying the individual client requests contained within the batch request;   for each individual request contained within the batch request, identifying an endpoint associated with a selected individual request, wherein the endpoint is associated with underlying software logic for processing the individual request and producing a response;   invoking the identified endpoint to process the selected request and produce the response;   receiving individual response data from the invoked endpoint, and storing the response data for inclusion in a batch response to the client;   creating a batch response to provide responses to the individual requests in a batch to the client; and   sending the batch response from the server to the client, wherein the preceding steps are performed by at least one processor.   
     
     
         12 . The method of  claim 11  wherein receiving at the server batch endpoint comprises providing at the server individual endpoints for separate requests as well as the server batch endpoint for receiving batch requests. 
     
     
         13 . The method of  claim 11  wherein receiving at the server batch endpoint comprises providing batch handling in a manner that individual developers writing and maintaining individual endpoints need not be aware of or understand the batch process. 
     
     
         14 . The method of  claim 11  wherein identifying individual client requests comprises accessing header information received with the batch request to delineate individual requests within the batch request. 
     
     
         15 . The method of  claim 11  wherein identifying individual client requests comprises identifying separation markers within the batch request that delineate individual requests within the batch request. 
     
     
         16 . The method of  claim 11  wherein handling of each individual client request contained within the batch request occurs on the server in parallel. 
     
     
         17 . The method of  claim 11  wherein identifying the endpoint comprises identifying a uniform resource locator (URL) associated with the endpoint and contained within the request. 
     
     
         18 . The method of  claim 11  wherein invoking the identified endpoint comprises forming an individual request like would traditionally have been sent from the client prior to batching and directing that request to the endpoint. 
     
     
         19 . The method of  claim 11  wherein invoking the identified endpoint comprises directly invoking internal server logic associated with the endpoint. 
     
     
         20 . The method of  claim 11  wherein creating the batch response comprises accessing stored response data from handling each individual request to create the batch response. 
     
     
         21 . The method of  claim 11  wherein creating the batch response comprises building delineation information that allows a client to separately identify each individual response within the batch response. 
     
     
         22 . The method of  claim 11  wherein sending the batch response comprises transmitting the batch response in a format that matches that used by the batch request received at the server.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.