Efficient synchronization of agents starting a task where the agents poll a server to learn the task start time
First Claim
1. A computerized method comprising:
- setting a task start time by a server, the task start time set equal to a next polling time by a last agent that has most recently polled the server, the next polling time being a time at which the last agent is expected to again poll the server;
in response to each of a plurality of agents, including the last agent, polling the server, the server responding with the task start time; and
,at each of the plurality of agents, starting a task at the task start time, such that all of the plurality of agents start the task at a same time,wherein all of the plurality of agents except for the last agent have to wait for the task start time to start the task after polling the server, and the last agent starts the task immediately after polling the server.
1 Assignment
0 Petitions
Accused Products
Abstract
A server sets a task start time equal to a next polling time by a last agent that has most recently polled the server. In response to each of a number of agents, including the last agent, polling the server, the server provides the task start time. At each agent, a task is started at the task start time, such that all the agents start the task at a same time. As such, all the agents except for the last agent have to wait for the task start time to start the task after polling the server, whereas the last agent starts the task immediately after polling the server. The server may also determine a polling interval time based on a number of the agents that have polled the server, where the polling interval time indicates how long each agent waits between successive pollings of the servers.
53 Citations
20 Claims
-
1. A computerized method comprising:
-
setting a task start time by a server, the task start time set equal to a next polling time by a last agent that has most recently polled the server, the next polling time being a time at which the last agent is expected to again poll the server; in response to each of a plurality of agents, including the last agent, polling the server, the server responding with the task start time; and
,at each of the plurality of agents, starting a task at the task start time, such that all of the plurality of agents start the task at a same time, wherein all of the plurality of agents except for the last agent have to wait for the task start time to start the task after polling the server, and the last agent starts the task immediately after polling the server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computerized system comprising:
-
one or more computing devices, a plurality of agents running on the computing devices; a server implemented at least in hardware and communicatively connected with the plurality of agents, the server setting a task start time equal to a next polling time by a last agent of the plurality of agents, the last agent having most recently polled the server, the next polling time being a time at which the last agent is expected to again poll the server, such that in response to each of the plurality of agents polling the server, the server responds with the task start time, and in response each of the plurality of agents starts a task at the task start time, so that all of the plurality of agents start the task at a same time, wherein all of the plurality of agents except for the last agent have to wait for the task start time to start the task after polling the server, and the last agent starts the task immediately after polling the server. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A computer-readable medium having one or more computer programs stored thereon and executable by a server to perform a method comprising:
-
in response to each of a plurality of agents polling the server, including providing an identifier that uniquely identifies the agent compared to other agents, the server recording the identifier of each agent polling the server so that the server is able to determine a number of the agents that have polled the server; the server determining a polling interval time based on the number of the agents that have polled the server, the polling interval time indicating how long each agent waits between successive pollings of the server; in response to each of the plurality of agents polling the server, the server responding with the polling interval time that has been determined, such that each agent waits to again poll the server until the polling interval time has elapsed; the server setting a task start time equal to a next polling time by a last agent of the plurality of agents that has most recently polled the server, the next polling time being a time at which the last agent is expected to again poll the server; and
,in response to each of the plurality of agents, including the last agent, polling the server, the server responding with the task start time, such that each of the plurality of agents starts a task at the task start time so that all of the plurality of agents start the task at a same time, wherein all of the plurality of agents except for the last agent have to wait for the task start time to start the task after polling the server, and the last agent starts the task immediately after polling the server.
-
Specification