Systems and methods for caching http post requests and responses
AssigneePaypal, Inc.
InventorsSuresh Mathew, Kumar Rethi
Life of this patent
Estimating the term…
Abstract
With an idempotent POST request, the URL (and headers) cannot be used as an HTTP cache key. To cache idempotent POST requests, the POST body is digested and appended the URL with the digest and used as the cache key. Subsequent requests with the same payload will end up hitting the cache rather than the origin server. A forward cache proxy at the client end and reverse cache proxy at the server end are deployed. The client sends the request to the forward proxy that looks up the cache. If there is a cache miss, the forward cache proxy digests the body and sends only the digest to the reverse proxy. The reverse cache proxy looks up request cache to find if there is a match for the request and send that request to the server.
Claims21
1-20. (canceled)
A method, comprising:
- receiving a first hypertext transfer protocol (HTTP) POST request;
- generating, by a computer system, a digest version of a body of the first POST request, wherein the digest version is based on the content of the body;
- creating a first cache key using a URL for the first POST request and the digest version;
- storing a cache entry for the first POST request within a memory using the first cache key;
- receiving a second HTTP POST request subsequent to the first POST request;
- and
- responsive to the second POST request, locating the cache entry for the first POST request using the first cache key.
A non-transitory computer-readable storage medium having stored thereon instructions that are executable by a computer system to cause the computer system to perform operations comprising:
- receiving a first hypertext transfer protocol (HTTP) POST request;
- generating a digest version of a body of the first POST request, wherein the digest version is based on the content of the body;
- creating a first cache key using a URL for the first POST request and the digest version;
- storing a cache entry for the first POST request within a memory using the first cache key;
- receiving a second HTTP POST request subsequent to the first POST request;
- and
- responsive to the second POST request, locating the cache entry for the first POST request using the first cache key.
A system, comprising:
- a processor;
- and
- a memory having stored thereon instructions that are executable by the processor to cause the system to perform operations comprising:
- receiving a first hypertext transfer protocol (HTTP) POST request;
- generating a digest version of a body of the first POST request, wherein the digest version is based on the content of the body;
- creating a first cache key using a URL for the first POST request and the digest version;
- storing a cache entry for the first POST request using the first cache key as an index;
- receiving a second HTTP POST request subsequent to the first POST request;
- and
- responsive to the second POST request, locating the cache entry for the first POST request using the first cache key.
Dependencies are inferred from the claim text.