Method and apparatus and program for scheduling and executine events in real time over a network
First Claim
1. A method for scheduling and executing a real-time event in a networked environment, the method comprising:
- (a) contacting one or more event schedulers;
(b) receiving an event schedule update from the event schedulers;
(c) calculating the time when each event is to occur from information contained in the received scheduling information for each event;
(d) placing event scheduling information contained in the received scheduling information for each event plus the calculated time for that same event into an event queue; and
(e) at the time when each event is to occur, as indicated by examination of the calculated times in the event queue, contacting one or more event processors designated by the received scheduling information corresponding to that event and sending an event firing message to the designated event processors.
3 Assignments
0 Petitions
Accused Products
Abstract
The present invention relates to a method, system, computer program product, or apparatus that schedules and executes events within a network in real-time. An event processor contacts one or more event schedulers, and it receives back from them event schedule updates. It then calculates the time when each event is to occur from information contained in the received scheduling information for each event. Next, it places event scheduling information contained in the received scheduling information for each event, plus the calculated occurrence time of the corresponding event, into an event queue. Finally, at the time when each event is to occur, as indicated by examination of the calculated times in the event queue, the event processor sends out event firing messages to event processors that are named in the received scheduling information for each event.
-
Citations
30 Claims
-
1. A method for scheduling and executing a real-time event in a networked environment, the method comprising:
-
(a) contacting one or more event schedulers;
(b) receiving an event schedule update from the event schedulers;
(c) calculating the time when each event is to occur from information contained in the received scheduling information for each event;
(d) placing event scheduling information contained in the received scheduling information for each event plus the calculated time for that same event into an event queue; and
(e) at the time when each event is to occur, as indicated by examination of the calculated times in the event queue, contacting one or more event processors designated by the received scheduling information corresponding to that event and sending an event firing message to the designated event processors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for scheduling and executing a real time event over a network, the system comprising:
-
at least one farm of machines sharing a load balancer;
a cluster of servers arranged to replace each other in case of malfunction, the cluster networked to the farm;
at least one event processor within the farm of machines able to cause an event to occur in response to a received message;
at least one event scheduler within the farm of machines able to provide event schedules indicating when one or more events are to occur and the addresses of the event processors that can cause the events to occur;
an event manager within the cluster that comprises an event queue, an event loader that accepts event schedules from the schedulers and places them into an event queue, and a timekeeper that examines the event queue and, at the time of a scheduled event, transmits a message requesting firing of the event to an event processor whose address is obtained from the corresponding event schedule. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A computer program product having program code that is executable by a computer for scheduling and executing real-time events in a networked environment, the program code configured to cause the computer to perform the method comprising:
-
(a) contacting one or more event schedulers;
(b) receiving an event schedule update from the event schedulers;
(c) calculating the time when each event is to occur from information contained in the received scheduling information for each event;
(d) placing event scheduling information contained in the received scheduling information for each event plus the calculated time for that same event into an event queue; and
(e) at the time when each event is to occur, as indicated by examination of the calculated times in the event queue, contacting one or more event processors designated by the received scheduling information corresponding to that event and sending an event firing message to the designated event processors. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
-
30. An apparatus for scheduling and executing real-time events over a network comprising:
-
event management means for receiving event schedule updates from a networked environment, said event management means comprising;
calculation means for calculating the time when each event is to occur from information contained in the most recently received event schedule update for each event;
(d) event queue synchronizing means for establishing an event queue, for placing information taken from incoming event schedule updates and the calculated times of event occurrence into the event queue, and for synchronizing the contents of the event queue with later-arriving event schedule updates when they are received; and
(e) communicating means for sending out an event firing message to a network address designated by the most recently received event scheduling update information corresponding to an event at the time when that event is scheduled to occur, as indicated by examination of the calculated time of occurrence for that event contained within the event queue.
-
Specification