Efficiently Caching Data at a Client Device
Abstract
A merchant system computes various probabilities that visitors to a Web site will request individual Web pages of the Web site. The computed probabilities are then utilized to cache Web pages having the highest probabilities of being requested to a client device. The probability data may include aggregate probability data that defines the probability that any visitor to the Web site will request a Web page, customer segment probability data that defines the probability that customers in a particular customer segment will visit the Web pages, and/or customer-specific probability data that defines the probability that a specific customer of the Web site will visit the Web pages. Only Web pages having a computed probability greater than a caching threshold may be cached at the client device. Additionally, the Web pages may also be cached at the client device based upon the actual interaction with the Web site by a visitor.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer-implemented method comprising:
determining whether sufficient information exists about a user of a computing device to cache one or more network pages at the computing device using user-specific probability data; in response to determining that sufficient information exists about the user to cache one or more network pages at the computing device using the user-specific probability data, caching one or more network pages at the computing device using the user-specific probability data; in response to determining that sufficient information does not exist about the user to cache one or more network pages using the user-specific probability data, determining whether the user can be mapped to a user segment; in response to determining that the user can be mapped to a user segment, caching one or more network pages at the computing device using segment probability data; and in response to determining that the user cannot be mapped to a user segment, caching one or more network pages at the computing device using aggregate probability data.
2 . The computer-implemented method of claim 1 , wherein a network page having a computed probability satisfying a caching threshold is cached at the computing device.
3 . The computer-implemented method of claim 2 , wherein the caching threshold is set based at least in part upon at least one of a size of a network page cache at the computing device, a network bandwidth to the computing device, or a type of the computing device.
4 . The computer-implemented method of claim 2 , wherein the caching threshold is periodically adjusted based at least in part upon one or more cache performance metrics.
5 . The computer-implemented method of claim 1 , wherein two or more network pages are cached at the computing device from a highest to a lowest computed probability.
6 . The computer-implemented method of claim 1 , further comprising caching the one or more network pages based at least in part upon detected behavior of the user of the computing device.
7 . A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by the computer, cause the computer to at least:
receive, from a computing device, a request for a network page of a plurality of network pages of a network site; and in response to receiving the request, use a caching threshold to cache one or more of the plurality of network pages at the computing device utilizing probability data,
wherein user-specific probability data is utilized to cache the one or more of the plurality of network pages at the computing device in response to a determination that a user of the computing device can be identified,
wherein segment probability data is utilized to cache the one or more of the plurality of network pages at the computing device in response to a determination that the user of the computing device cannot be identified but the user of the computing device can be mapped to a user segment, and
wherein aggregate probability data is utilized to cache the one or more of the plurality of network pages at the computing device in response to a determination that the user of the computing device cannot be identified and the user of the computing device cannot be mapped to a user segment.
8 . The computer-readable storage medium of claim 7 , wherein a network page having a computed probability satisfying the caching threshold is cached at the computing device.
9 . The computer-readable storage medium of claim 8 , having further computer-executable instructions stored thereupon which, when executed by the computer, further cause the computer to at least adjust the caching threshold periodically based at least in part upon one or more cache performance metrics.
10 . The computer-readable storage medium of claim 8 , wherein the caching threshold is set based at least in part upon at least one of a size of a network page cache at the computing device, a network bandwidth to the computing device, or a type of the computing device.
11 . The computer-readable storage medium of claim 7 , wherein two or more of the plurality of network pages are cached at the computing device from a highest to a lowest computed probability.
12 . The computer-readable storage medium of claim 7 , wherein caching the one or more of the network pages is further based at least in part upon detected behavior of the user of the computing device.
13 . An apparatus comprising:
at least one processor; and a computer-readable storage medium having computer executable instructions stored thereon which, when executed on the at least one processor, cause the apparatus to at least:
cache, at a computing device, one or more network pages of a network site utilizing user-specific probability data in response to a determination that a user of the computing device can be identified;
cache, at a computing device, one or more network pages of a network site utilizing segment probability data in response to a determination that the user of the computing device cannot be identified but the user of the computing device can be mapped to a user segment; and
cache, at a computing device, one or more network pages of a network site utilizing aggregate probability data in response to a determination that the user of the computing device cannot be identified and the user of the computing device cannot be mapped to a user segment.
14 . The apparatus of claim 13 , wherein the aggregate probability data is computed based at least in part upon aggregate historical behavior of visitors to the network site.
15 . The apparatus of claim 13 , wherein the segment probability data is computed based at least in part upon historical behavior of visitors to the network site identified as members of a user segment.
16 . The apparatus of claim 13 , wherein the user-specific probability data is computed based at least in part upon historical behavior of identified visitors to the network site.
17 . The apparatus of claim 13 , wherein a network page having a computed probability satisfying a caching threshold is cached at the computing device.
18 . The apparatus of claim 17 , wherein the caching threshold is set based at least in part upon at least one of a size of a network page cache at the computing device, a network bandwidth to the computing device, or a type of the computing device.
19 . The apparatus of claim 18 , wherein the caching threshold is periodically adjusted based at least in part upon one or more cache performance metrics.
20 . The apparatus of claim 13 , wherein two or more of the network pages are cached at the computing device from a highest to a lowest computed probability.Join the waitlist — get patent alerts
Track US2016150049A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.