Abstract:
A method of selecting an edge proxy server to serve web contents to user devices is disclosed. Domain name system (DNS) queries from a domain name resolver are received. A mapping between the domain name resolver and a corresponding list of user devices served by the domain name resolver are created based on the received DNS queries. A transformed geographical location representing the domain name resolver is determined based on the mapping. An edge proxy server is selected in response to a future DNS query received from the domain name resolver based at least in part on the transformed geographical location of the domain name resolver.
Abstract:
A method of delivering webpages to a browser includes delivering a first webpage using a streaming protocol that optimizes delivery of content of the first webpage where the first webpage includes information that may persist in a browser cache; delivering a second webpage without using the streaming protocol where the second webpage and the first webpage both reference a first resource; and forcing revalidation of the first resource stored on the browser cache.
Abstract:
Providing interaction to an application with a collection of information stored in a Document Object Model is disclosed. The collection is maintained in the Document Object Model. A virtualization layer provides one or more collection interfaces to the collection. An indication of an interaction of the application with the collection is received. The collection interfaces include a safety buffer and the interaction of the application with the safety buffer triggers a functionality of the virtualization layer.
Abstract:
A method of delivering webpages to a browser includes delivering a first webpage using a streaming protocol that optimizes delivery of content of the first webpage where the first webpage includes information that may persist in a browser cache; delivering a second webpage without using the streaming protocol where the second webpage and the first webpage both reference a first resource; and forcing revalidation of the first resource stored on the browser cache.
Abstract:
A method of delivering content of a webpage to a web browser on a device communicating with a network through a proxy server includes embedding a first nested browsing context in a parent browsing context of the web browser where the parent browsing context is associated with a first domain and the first nested browsing context is associated with a second domain; sending a request for content from the first nested browsing context to the second domain through the proxy server; and receiving at the first nested browsing context the content from the second domain.
Abstract:
A method of delivering animated images by an edge server to a web browser is disclosed. The method includes receiving a request for an image file. It includes detecting the image file as an animated image file. It includes generating two or more versions of the animated image file, including a first version of the animated image file having at least some frames at lower-resolution than corresponding frames in the animated image file, and including a second version of the animated image file having at least some frames at higher-resolution than corresponding frames in the first version of the animated image file. It includes sending the first version of the animated image file in response to the request for the image file and delaying delivery of the second version of the animated image file until a subsequent request for the second version of animated image file is received.
Abstract:
A method of updating a document object model (DOM) is disclosed. A message is received from a web browser requesting for information to update the DOM. A dummy response message is sent to the web browser, wherein the dummy response message does not include the information to update the DOM, and wherein the dummy response message causes the web browser to create a dummy node in the DOM. A request message is received from a client as part of a client-server protocol, wherein the request message requests at least a portion of the information to be sent to the client. A first response message is sent including at least a portion of the information to the client, wherein the first response message is processed by the client to determine a first update to the DOM, and wherein the first update is applied to the DOM.
Abstract:
Prioritizing delivery of different portions of images is disclosed, including: receiving a request for an image file; identifying a cluster of characterized images in an N-dimensional space to which the image file belongs; assigning a split point to the image file that is associated with the identified cluster of characterized images; and prioritizing a delivery of a first portion and a second portion of the image file based at least in part on the assigned split point.
Abstract:
A method of delivering a webpage including dynamic content is disclosed. A request for the webpage directed to a third-party site is received. Likely components corresponding to the webpage is determined with a processor based at least in part on previous responses to similar requests. The determined likely components corresponding to the webpage are sent to a sender of the request. The webpage from the third-party site is received. The remaining components corresponding to the webpage are determined with the processor. The determined remaining components corresponding to the webpage are sent in response to the request.
Abstract:
A method of updating a document object model (DOM) is disclosed. A message is received from a web browser requesting for information to update the DOM. A dummy response message is sent to the web browser, wherein the dummy response message does not include the information to update the DOM, and wherein the dummy response message causes the web browser to create a dummy node in the DOM. A request message is received from a client as part of a client-server protocol, wherein the request message requests at least a portion of the information to be sent to the client. A first response message is sent including at least a portion of the information to the client, wherein the first response message is processed by the client to determine a first update to the DOM, and wherein the first update is applied to the DOM.