System and method of providing web content using a proxy cache

US11082519B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11082519-B2
Application numberUS-201715589444-A
CountryUS
Kind codeB2
Filing dateMay 8, 2017
Priority dateMay 8, 2017
Publication dateAug 3, 2021
Grant dateAug 3, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer-implemented method of providing content using a request-response protocol is provided. The method comprises storing a data object associated with a key, receiving a first response message from a server containing an invalidate parameter wherein the invalidate parameter includes a pattern that matches the key, and invalidating the stored data object associated with the key in response to the invalidate parameter. A computing system comprising one or more processors and non-transitory computer readable storage medium embodying programming instructions configurable to cause the one or more processors to implement a proxy cache is also provided. The proxy cache is configured to store a data object associated with a key, receive a first response message from a server containing an invalidate parameter wherein the invalidate parameter includes a pattern that matches the key, and invalidate the stored data object associated with the key in response to the invalidate parameter.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method of providing content using a request-response protocol, the method comprising: storing, in a cache storage medium associated with a proxy a cached object that is a copy of a cacheable object stored at a server, wherein the cached object observes an observable object for changes through the proxy keeping track of an observable relationship identified by the server via an observable parameter in a response message, wherein the observable relationship comprises the identity of an observable object that if modified would make one or more cached objects obsolete, wherein the observable object is stored at the server and the observable object is not the cacheable object; receiving, from a client at the proxy, a request to replace the observable object at the server with a new resource; forwarding, to the server by the proxy, the request to replace the observable object with the new resource; receiving, at the proxy from the server after the server has replaced the observable object with the new resource, a response message that includes a notify parameter that identifies the observable object as having been changed; forwarding, by the proxy, the response message to the client; and instructing, by the proxy, the cache storage medium to invalidate the cached object that has been observing the observable object identified by the notify parameter, wherein the cache storage medium invalidates the cached object that has been observing the observable object; and wherein a subsequent request from a client for the cacheable object is not serviced from the cache storage medium. 2. The method of claim 1 , further comprising receiving, at the proxy from the server via a parameter in a response message, a notification of the observable object for the cached object to observe. 3. The method of claim 1 , further comprising receiving, by the proxy from a server, the identity of an observable relationship, wherein the observable relationship comprises the identity of an observable object that if modified would make one or more cached objects obsolete wherein the observable names are used to construct an object graph. 4. The method of claim 1 , further comprising constructing, by the proxy, an object graph to keep track of an observable object that if modified would make one or more cached objects obsolete. 5. The method of claim 1 , wherein searching the cache storage medium for the resource in the cacheable object responsive to the subsequent request results in the resource not being found because the resource was invalidated. 6. The method of claim 5 , wherein the subsequent request is forwarded to the server for the current version of the resource. 7. The method of claim 6 , wherein the current version of the resource is forwarded to the client and the current version cached. 8. A computing system comprising: one or more processors; a cache storage medium; non-transitory computer readable storage medium embodying programming instructions configurable to cause the one or more processors to implement using the cache storage medium a proxy cache, the proxy cache configured to: cache a cached object that is a copy of a cacheable object stored at a server, wherein the cached object observes an observable object for changes through the proxy keeping track of an observable relationship identified by the server via an observable parameter in a response message, wherein the observable relationship comprises the identity of an observable object that if modified would make one or more cached objects obsolete, wherein the observable object is stored at the server and the observable object is not the cacheable object; receive, from a client, a request to replace the observable object at the server with a new resource; forward, to the server, the request to replace the observable object with the new resource; receive, from the server after the server has replaced the observable object with the new resource, a response message that includes a notify parameter that identifies the observable object as having been changed; forward, by the proxy, the response message to the client; and invalidate the cached object that has been observing the observable object identified by the notify parameter; and not service a subsequent request from a client for the cacheable object from the cache storage medium. 9. The computing system of claim 8 , wherein the notify parameter is implemented as a header parameter in HTTP, wherein the notify parameter lets the proxy know that there has been a change in an observable object. 10. The computing system of claim 8 , wherein the proxy cache is further configured to construct an object graph to keep track of an observable object that if modified would make one or more cached objects obsolete. 11. The computing system of claim 8 , wherein the proxy cache is further configured to receive, from the server, the identity of an observable relationship, wherein the observable relationship comprises the identity of an observable object that if modified would make one or more cached objects obsolete. 12. The computing system of claim 8 , wherein a search in the cache storage medium for the resource in the cacheable object responsive to the subsequent request results in the resource not being found because the resource was invalidated. 13. The computing system of claim 12 , wherein the proxy cache is configured to forward the subsequent request to the server for the current version of the resource. 14. The computing system of claim 13 , wherein the proxy cache is further configured to forward the current version of the resource to the client and cause the current version to be cached. 15. A non-transitory computer readable storage medium encoded with programming instructions configurable to cause a processor to implement a proxy cache that performs a method, the method comprising: caching a cached object that is a copy of a cacheable object stored at a server in a cache storage medium, wherein the cached object observes an observable object for changes through the proxy keeping track of an observable relationship identified by the server via an observable parameter in a response message, wherein the observable relationship comprises the identity of an observable object that if modified would make one or more cached objects obsolete, wherein the observable object is stored at the server and the observable object is not the cacheable object; receiving, from a client, a request to replace the observable object at the server with anew resource; forwarding, to the server, the request to replace the observable object with the new resource; receiving, from the server after the server has replaced the observable object with the new resource, a response message that includes a notify parameter that identifies the observable object as having been changed; forwarding the response message to the client; and instructing the cache storage medium to invalidate the cached object that has been observing the observable object identified by the notify parameter, wherein the cache storage medium invalidates the cached object that has been observing the observable object; and wherein a subsequent request from a client for the cacheable object is not serviced from the cache storage medium. 16. The non-transitory computer readable storage medium of claim 15 , wherein the notify parameter is implemented as a header parameter in HTTP, wherein the notify parameter lets the proxy know that there has been a change in an observable object. 17. The non-t

Assignees

Inventors

Classifications

  • Storing data temporarily at an intermediate stage, e.g. caching · CPC title

  • H04L63/00Primary

    Network architectures or network communication protocols for network security (cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00; network architectures or network communication protocols for wireless network security H04W12/00; security arrangements for protecting computers or computer systems against unauthorised activity G06F21/00) · CPC title

  • Policies or rules for updating, deleting or replacing the stored data · CPC title

  • Protocols · CPC title

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11082519B2 cover?
A computer-implemented method of providing content using a request-response protocol is provided. The method comprises storing a data object associated with a key, receiving a first response message from a server containing an invalidate parameter wherein the invalidate parameter includes a pattern that matches the key, and invalidating the stored data object associated with the key in response…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification H04L63/00. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Aug 03 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).