Throttling to reduce synchronizations of excessively changing data
First Claim
Patent Images
1. A non-transitory machine readable storage medium storing instructions which when executed by a processor cause the processor to perform a method, the method comprising:
- determining that a piece of data is being synchronized more than a threshold number of times, wherein the determining comprises determining that a change variable value is less than a throttle-on threshold; and
disabling synchronization of the piece of data for a number of subsequent synchronization cycles, in response to determining that the piece of data is being synchronized more than the threshold number of times, wherein the number of subsequent synchronization cycles is based on a number of times synchronization has been disabled for the piece of data, and wherein the disabling comprises;
setting the change variable value to a reset value,setting a throttle-off decay value based on the number of times synchronization has been disabled for the piece of data, wherein the throttle-off decay value is decreased for each time synchronization has been disabled for the piece of data, anddecrementing the change variable value by the throttle-off decay value for each subsequent synchronization cycle.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the invention determine if a user preference or other piece of data is being synchronized too frequently. If the user preference is being synchronized too frequently, synchronization of the user preference is throttled to prevent it from synchronizing for some number of synchronization cycles. If the user preference rarely changes, the user preference is rewarded by throttling it less often.
16 Citations
19 Claims
-
1. A non-transitory machine readable storage medium storing instructions which when executed by a processor cause the processor to perform a method, the method comprising:
-
determining that a piece of data is being synchronized more than a threshold number of times, wherein the determining comprises determining that a change variable value is less than a throttle-on threshold; and disabling synchronization of the piece of data for a number of subsequent synchronization cycles, in response to determining that the piece of data is being synchronized more than the threshold number of times, wherein the number of subsequent synchronization cycles is based on a number of times synchronization has been disabled for the piece of data, and wherein the disabling comprises; setting the change variable value to a reset value, setting a throttle-off decay value based on the number of times synchronization has been disabled for the piece of data, wherein the throttle-off decay value is decreased for each time synchronization has been disabled for the piece of data, and decrementing the change variable value by the throttle-off decay value for each subsequent synchronization cycle. - View Dependent Claims (2, 3, 4, 11, 12, 13)
-
-
5. A data processing system comprising:
-
a processor; a memory coupled to the processor through a bus; a network interface coupled to the processor through the bus; and instructions stored on the memory which when executed by the processor cause the processor to; perform a periodic synchronization of modified user data items with a remote data processing system through the network interface, identify a user data item that requires synchronization more than a threshold number of times, wherein the identifying comprises determining that a change variable value is less than a throttle-on threshold, and disable synchronization for the user data item for a number of subsequent periodic synchronization cycles, wherein the disabling comprises; setting the change variable value to a reset value, setting a throttle-off decay value based on the number of times synchronization has been disabled for the piece of data, wherein the throttle-off decay value is decreased for each time synchronization has been disabled for the piece of data, and decrementing the change variable value by the throttle-off decay value for each subsequent synchronization cycle. - View Dependent Claims (6, 14, 15, 16)
-
-
7. A method comprising:
-
determining that a piece of data is being synchronized more than a threshold number of times, wherein the determining comprises determining that a change variable value is less than a throttle-on threshold; and disabling synchronization of the piece of data for a number of subsequent synchronization cycles, in response to determining that the piece of data is being synchronized more than the threshold number of times, wherein the number of subsequent synchronization cycles is based on a number of times synchronization has been disabled for the piece of data, and wherein the disabling comprises; setting the change variable value to a reset value, setting a throttle-off decay value based on the number of times synchronization has been disabled for the piece of data, wherein the throttle-off decay value is decreased for each time synchronization has been disabled for the piece of data, and decrementing the change variable value by the throttle-off decay value for each subsequent synchronization cycle. - View Dependent Claims (8, 9, 10, 17, 18, 19)
-
Specification