Optimized Polling in Low Resource Devices
First Claim
1. An apparatus comprising:
- a processor configured to control some operations of the apparatus; and
memory storing computer readable instructions that, when executed by the processor, configure the apparatus to perform server polling by;
executing a client component to poll a server at a first rate when a user interaction criterion is met, wherein said server provides data for the client component; and
executing the client component to poll the server at a second rate, different from said first rate, when the user interaction criterion is not met.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for optimizing server polling by a mobile client are described, thereby allowing mobile terminals to conserve battery life by more efficiently using resources such as the processor and transceiver in the mobile terminal A broker system may be used to minimize wireless communication traffic used for polling. A broker stub intercepts server polling messages at the client, multiplexes the sever requests together, and forwards the multiplexed message to a broker skeleton that de-multiplexes and forwards the messages as appropriate. Polling may also be dynamically adapted based on user behavior, or a server guard may be used to monitor changes to data, and notify a client to poll its respective server when the server guard detects new or updated data on that server for that client.
-
Citations
39 Claims
-
1. An apparatus comprising:
-
a processor configured to control some operations of the apparatus; and memory storing computer readable instructions that, when executed by the processor, configure the apparatus to perform server polling by; executing a client component to poll a server at a first rate when a user interaction criterion is met, wherein said server provides data for the client component; and executing the client component to poll the server at a second rate, different from said first rate, when the user interaction criterion is not met. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
executing a client component; the client component polling a server at a first rate when a user interaction criterion is met, wherein said server provides data for the client component; and the client component polling the server at a second rate, different from said first rate, when the user interaction criterion is not met. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. One or more computer readable media storing computer readable instructions that, when executed, perform server polling by:
-
executing a client component to poll a server at a first rate when a user interaction criterion is met, wherein said server provides data for the client component; and executing the client component to poll the server at a second rate, different from said first rate, when the user interaction criterion is not met. - View Dependent Claims (13, 14, 15)
-
-
16. An apparatus, comprising:
-
a processor configured to control some operations of the apparatus; and memory storing computer readable instructions that, when executed by the processor, configure the apparatus to act as a server guard by; receiving a registration message , said registration message providing server information for a server component corresponding to a client component; registering the server information in a database; polling the server component according to a predefined schedule to determine whether the server component has new data intended for the client component; and when the server component has new data intended for the client component, sending a message addressed to the client component indicating that the server component has new data intended for the client component. - View Dependent Claims (17, 18, 19)
-
-
20. One or more computer readable media storing computer readable instructions that, when executed, perform:
-
receiving a registration message , said registration message providing server information for a server component corresponding to a client component; registering the server information in a database; polling the server component according to a predefined schedule to determine whether the server component has new data intended for the client component; and when the server component has new data intended for the client component, sending a message addressed to the client component indicating that the server component has new data intended for the client component. - View Dependent Claims (21, 22, 23)
-
-
24. A method comprising:
-
receiving a registration message , said registration message providing server information for a server component corresponding to a client component; registering the server information in a database; polling the server component according to a predefined schedule to determine whether the server component has new data intended for the client component; and when the server component has new data intended for the client component, sending a message addressed to the client component indicating that the server component has new data intended for the client component. - View Dependent Claims (25, 26, 27)
-
-
28. An apparatus comprising:
-
a processor; and memory storing computer executable instructions that, when executed by the processor, configure the apparatus to poll a server by; wirelessly sending a registration message addressed to a server guard module, wherein said registration message comprises server information corresponding to a server component providing data to a client component executing on the apparatus; sending a plurality of heartbeat messages addressed to the server guard module according to a predefined schedule; and receiving a response to one of the heartbeat messages, said response indicating the server component has new data that the apparatus has not yet received. - View Dependent Claims (29, 30, 31)
-
-
32. A method comprising:
-
wirelessly sending a registration message addressed to a server guard module, wherein said registration message comprises server information corresponding to a server component providing data to a client component; sending according to a predefined schedule a plurality of heartbeat messages addressed to the server guard module; and receiving a response to one of the heartbeat messages, said response indicating the server component has new data that the client component has not yet received. - View Dependent Claims (33, 34, 35)
-
-
36. One or more computer readable media storing computer executable instructions that, when executed, perform:
-
wirelessly sending a registration message addressed to a server guard module, wherein said registration message comprises server information corresponding to a server component providing data to a client component executing on the apparatus; sending a plurality of heartbeat messages addressed to the server guard module according to a predefined schedule; and receiving a response to one of the heartbeat messages, said response indicating the server component has new data that the apparatus has not yet received. - View Dependent Claims (37, 38, 39)
-
Specification