Reliable, secure and scalable infrastructure for event registration and propagation in a distributed enterprise
First Claim
1. A system for notifying clients of events of an event source, comprising:
- a first trigger engine configured to register event requests, including a first event request from a first client and a second event request from a second client, and to concentrate the first and second event requests into a base event request;
a second trigger engine configured to communicate with the first trigger engine for receiving a registration of the base event request at the second trigger engine, and further configured to receive notification of an event of the event source corresponding to the base event; and
upon receipt of an event instance corresponding to the base event from the event source, the second trigger engine providing data indicative of the event instance to the first trigger engine, the first trigger engine configured to determine whether the event instance corresponds to the first event request, and if so, to notify the first client of the event instance, and the first trigger engine configured to determine whether the event instance corresponds the second event request, and if so, to notify the second client of the event instance.
2 Assignments
0 Petitions
Accused Products
Abstract
A trigger engine and infrastructure for event registration and handling that is reliable, secure and scalable. Transactional authenticated and/or encrypted messages (e.g., via MSMQ) are used to transport events across each server. A stable recovery mechanism is provided wherein the recovery path is nearly identical to the normal path. A trigger engine may concentrate multiple similar requests into a single base request for event notification, and upon receipt of the base event, access tables maintained in the trigger engine to track which client registered for which type of notification. In this manner, only the base event request is registered remotely, reducing the number of events that need to be communicated to remote servers. Identical event requests from clients may also be concentrated into a base event request, and events distributed to those clients when appropriate. Duplicate base event requests are blocked locally and thus only the first such one ever reaches the remote server. The trigger engines are capable of combining events in a complex manner, such as to notify a client only when a combination of time events, job events and/or other events have occurred, thus being suitable for use in a batch system.
-
Citations
30 Claims
-
1. A system for notifying clients of events of an event source, comprising:
-
a first trigger engine configured to register event requests, including a first event request from a first client and a second event request from a second client, and to concentrate the first and second event requests into a base event request;
a second trigger engine configured to communicate with the first trigger engine for receiving a registration of the base event request at the second trigger engine, and further configured to receive notification of an event of the event source corresponding to the base event; and
upon receipt of an event instance corresponding to the base event from the event source, the second trigger engine providing data indicative of the event instance to the first trigger engine, the first trigger engine configured to determine whether the event instance corresponds to the first event request, and if so, to notify the first client of the event instance, and the first trigger engine configured to determine whether the event instance corresponds the second event request, and if so, to notify the second client of the event instance. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30)
-
-
19. In a computer network, a method for notifying clients of events, comprising:
-
receiving from a first client a first request corresponding to a first event on a remote server, the first request including information specific thereto;
receiving from a second client a second request corresponding to a second event on the remote server, the second request including information specific thereto;
maintaining information specific to each event request in association with each client;
concentrating the first and second event requests into a base event request;
registering the base event request at the remote server;
receiving notification of the base event, the notification including event-specific information about the base event;
analyzing the event-specific information;
notifying the first client if the event-specific information corresponds to the information specific to the first event request associated with the first client; and
notifying the second client if the event-specific information corresponds to the information specific to the second event request associated with the second client.
-
-
29. A system for running jobs in a network, comprising:
-
a job scheduler component configured to request running of a job in response to at least one event;
a job dispatcher component configured to control the running of the job;
a switchbox configured to register event requests from the job scheduler component and to notify the job scheduler upon occurrence of each event corresponding to an event request therefrom, the switchbox further configured to register event requests from the job dispatcher component and to notify the job dispatcher upon occurrence of each event corresponding to an event request therefrom; and
the job scheduler being notified of an event, and requesting running of a job by triggering an event in the switchbox, the switchbox providing the event to the job dispatcher to cause execution of the job.
-
Specification