Application-driven CDN pre-caching
First Claim
1. A method in a client application executing in a computing device, comprising:
- generating a first request for desired content, the first request indicating additional content related to the desired content;
generating a likelihood indication indicating a likelihood the additional content will be subsequently requested by the client application, the likelihood indication based at least upon a proximity of the additional content to the desired content and having a likelihood value in a likelihood range that ranges from a low likelihood value to a high likelihood value, with content of the additional content immediately following the desired content having the high likelihood value;
transmitting the first request and the generated likelihood indication to a caching server;
receiving the desired content, but not the additional content, from the caching server, the caching server having retrieved the desired content from an origin server in response to the first request and having retrieved the additional content from the origin server based on the likelihood indication, the caching server having cached the retrieved additional content;
transmitting a second request to the caching server, the second request being a request for the additional content; and
receiving the cached additional content from the caching server in response to the second request.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques are provided for the caching of content prior to the content being requested. A request for desired content may be received from a client application at a caching server. The request may also indicate additional content related to the desired content that may be subsequently requested by the client application. The indicated additional content (and the desired content, if not already cached) is retrieved from an origin server. The desired content is transmitted to the client application at the user device, and the additional content is cached at the caching server. Subsequently, a second request may be received from the client application that includes a request for the additional content. The additional content, which is now cached at the caching server, is served to the client application by the caching server in response to the second request (rather than being retrieved from the origin server).
-
Citations
20 Claims
-
1. A method in a client application executing in a computing device, comprising:
-
generating a first request for desired content, the first request indicating additional content related to the desired content; generating a likelihood indication indicating a likelihood the additional content will be subsequently requested by the client application, the likelihood indication based at least upon a proximity of the additional content to the desired content and having a likelihood value in a likelihood range that ranges from a low likelihood value to a high likelihood value, with content of the additional content immediately following the desired content having the high likelihood value; transmitting the first request and the generated likelihood indication to a caching server; receiving the desired content, but not the additional content, from the caching server, the caching server having retrieved the desired content from an origin server in response to the first request and having retrieved the additional content from the origin server based on the likelihood indication, the caching server having cached the retrieved additional content; transmitting a second request to the caching server, the second request being a request for the additional content; and receiving the cached additional content from the caching server in response to the second request. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computing device, comprising:
-
at least one processor; at least one memory storing program code defining a client application configured to be executed by the at least one processor, the program code comprising; a request formatter configured to generate a first request for desired content, and an additional content predictor configured to predict additional content related to the desired content, the request formatter configured to indicate the additional content in the first request, the additional content predictor including an additional content prioritizer configured to generate a likelihood indication indicating a likelihood the additional content will be subsequently requested by the client application, the likelihood indication based at least upon a proximity of the additional content to the desired content and having a likelihood value in a likelihood range that ranges from a low likelihood value to a high likelihood value, content of the additional content temporally adjacent to the desired content having the high likelihood value; and a communication interface configured to transmit the first request and the generated likelihood indication to a caching server, and receive the desired content, but not the additional content, from the caching server, the caching server having retrieved the desired content from an origin server in response to the first request and having retrieved the additional content from the origin server based on the likelihood indication, the caching server having cached the retrieved additional content; the request formatter configured to generate a second request, the second request requesting the additional content; and the communication interface configured to transmit the second request to the caching server, and receive the cached additional content from the caching server in response to the second request. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computing device, comprising:
-
at least one processor; and program code defining a client application configured to be executed by the at least one processor to perform a method including; generating a first request for desired content, the first request indicating additional content related to the desired content; generating a likelihood indication indicating a likelihood the additional content will be subsequently requested by the client application, the likelihood indication based at least upon a proximity of the additional content to the desired content and having a likelihood value in a likelihood range that ranges from a low likelihood value to a high likelihood value, content of the additional content spatially adjacent to the desired content having the high likelihood value; transmitting the first request and the generated likelihood indication to a caching server; receiving the desired content, but not the additional content, from the caching server, the caching server having retrieved the desired content from an origin server in response to the first request and having retrieved the additional content from the origin server based on the likelihood indication, the caching server having cached the retrieved additional content; transmitting a second request to the caching server, the second request being a request for the additional content; and receiving the cached additional content from the caching server in response to the second request. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification