Cross-device notifications
US-2015373089-A1 · Dec 24, 2015 · US
US9596312B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9596312-B2 |
| Application number | US-201313752321-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 28, 2013 |
| Priority date | Jan 28, 2013 |
| Publication date | Mar 14, 2017 |
| Grant date | Mar 14, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method and system for static resource caching in a networking system are provided. The system includes a fetcher instantiated on a particular user device. The fetcher can be a browser plug-in, a separate process or a program integrated into another process on the particular user device. The fetcher downloads static resource data from a web server and groups the downloaded static resource data into a plurality of static resource packages. In some embodiments, the fetcher may predict new static resource package(s) that the particular user may need by analyzing the particular user's activities on the web server and web traffics on the particular user device. Therefore, static resource data from the web server may be effectively cached on the particular user device even before any browser is launched on the particular user device.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: caching static resource data from a web server on a fetcher instantiated on a particular user device of a particular user, the static resource data comprising a plurality of static resource packages, wherein the static resource data are grouped into the plurality of static resource packages based on different granularity levels, wherein a specified granularity level of the granularity levels with which a specified static resource package of the plurality of static resource packages is associated corresponds to an update frequency range, and wherein the static resource data having an update frequency in the update frequency range is grouped into the specified static resource package; requesting credentials and/or activities on the web server corresponding to the particular user via an intelligent API of the web server; analyzing web traffic data on the particular user device and the credentials and/or activities on the web server; predicting, based on results of said analyzing of the web traffic data and the credentials and/or activities, new static resource packages that the particular user may need from the web server according to a computing algorithm; requesting resource links of the predicted new static resource packages; fetching the predicted new static resource packages from a content distribution network (CDN) or directly from the web server via the intelligent API; and caching the newly predicted static resource packages on the fetcher. 2. The method of claim 1 , wherein the fetcher is a browser plug-in, a separate process, and/or a program integrated into another process on the particular user device. 3. The method of claim 1 , wherein the static resource data are grouped into the plurality of static resource packages based on different granularity levels, wherein a particular granularity level is determined by attributes of individual static resource file or image, specific requirements of the particular user device, and/or specific requirements of applications on the particular user device. 4. The method of claim 1 , wherein each static resource package of the plurality of static resource packages has multiple version numbers to accommodate different user devices, different displays, different browsers, and/or different languages. 5. The method of claim 1 , further comprising: generating a status map of the plurality of static resource packages cached on the fetcher, the status map including identifications, resource links, and version numbers of the plurality of static resource packages. 6. The method of claim 5 , wherein the status map is a hash table, a tree, a binary tree, a dictionary, a list, an array, a vector, and/or a database; and wherein the status map is cached on the fetcher, the web server and/or a cloud. 7. The method of claim 5 , further comprising: when there is a change to a particular static resource package of the plurality of static resource packages cached on the fetcher or a new static resource package is predicted, updating the status map in substantially real time; comparing the updated status map with the plurality of static resource packages cached on the fetcher; and if a specific static resource package is not cached or a wrong version of the specific static resource package is cached: fetching the specific static resource package with a correct version number from the CDN or directly from the web server via the intelligent API; and caching the fetched specific static resource package on the fetcher. 8. The method of claim 7 , wherein the CDN is incorporated in the web server, the CDN configured to determine a route with a lowest latency for the fetcher to download the specific static resource package with the correct version number. 9. The method of claim 1 , further comprising: determining delta changes to a particular static resource package of the plurality of static resource packages cached on the fetcher; downloading the delta changes from the CDN or directly from the web server via the intelligent API; and updating the particular static resource package with the downloaded delta changes. 10. The method of claim 1 , further comprising: periodically re-downloading the plurality of static resource packages cached on the fetcher after a first predetermined period of time; and periodically evicting cached static resource packages that have not been used by the particular user after a second predetermined period of time. 11. A web server, comprising: a processor; a computer system; and an application program instantiated on the computer system, wherein the application program provides computer-generated output; wherein the computer system is configured to: cache static resource data from a web server on a fetcher instantiated on a particular user device of a particular user, the static resource data comprising a plurality of static resource packages, wherein the static resource data are grouped into the plurality of static resource packages based on different granularity levels, wherein a specified granularity level of the granularity levels with which a specified static resource package of the plurality of static resource packages is associated corresponds to an update frequency range, and wherein the static resource data having an update frequency in the update frequency range is grouped into the specified static resource package; request credentials and/or activities on the web server corresponding to the particular user via an intelligent API of the web server; analyze web traffic data on the particular user device and the credentials and/or activities on the web server; predict, based on results of said analyzing of the web traffic data and the credentials and/or activities, new static resource packages that the particular user may need from the web server according to a computing algorithm; request resource links of the predicted new static resource packages; fetch the predicted new static resource packages from a content distribution network (CDN) or directly from the web server via the intelligent API; and cache the newly predicted static resource packages on the fetcher. 12. The web server as recited in claim 11 , wherein the fetcher is a browser plug-in, a separate process, and/or a program integrated into another process on the particular user device. 13. The web server as recited in claim 11 , wherein the static resource data are grouped into the plurality of static resource packages based on different granularity levels, wherein a particular granularity level is determined by attributes of individual static resource file or image, specific requirements of the particular user device, and/or specific requirements of applications on the particular user device. 14. The web server as recited in claim 11 , wherein each static resource package of the plurality of static resource packages has multiple version numbers to accommodate different user devices, different displays, different browsers, and/or different languages. 15. The web server as recited in claim 11 , wherein the computer system is further configured to: generate a status map of the plurality of static resource packages cached on the fetcher, the status map including identifications, resource links, and version of the static resource packages. 16. The web server as recited in claim 15 , wherein the status map is a hash table, a tree, a binary tree, a dictionary, a list, an array, a vector, and/or a database; and wherein the status map is cached on the fetcher, the web server and/or a cloud.
Physics · mapped topic
Electricity · mapped topic
Physics · mapped topic
Physics · mapped topic
Electricity · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.