Reliable, secure and scalable infrastructure for event registration and propagation in a distributed enterprise
First Claim
1. A system for notifying clients of job-related event instances, comprising:
- a first trigger engine, implemented in a first computing device of the system, 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 combine the first event request and the second event request into a single base event request;
a second trigger engine, implemented in the first computing device or a second computing device of the system, configured to communicate with the first trigger engine to receive a registration of the single base event request at the second trigger engine, the first trigger engine being configured to not communicate the first event request and the second event request to the second trigger engine in order to reduce a number of events to be remotely communicated, and the second trigger engine being further configured to receive notification of an event instance corresponding to a base event occurring at an event source; and
upon receipt of the notification of the event instance, the second trigger engine communicating data indicative of the event instance to the first trigger engine, the first trigger engine being configured to determine to which of the first event request and the second event request the event instance corresponds,wherein if the event instance corresponds to the first event request, then the first trigger engine notifies the first client of the event instance, andwherein if the event instance corresponds to the second event request, then the first trigger engine notifies 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.
40 Citations
28 Claims
-
1. A system for notifying clients of job-related event instances, comprising:
-
a first trigger engine, implemented in a first computing device of the system, 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 combine the first event request and the second event request into a single base event request; a second trigger engine, implemented in the first computing device or a second computing device of the system, configured to communicate with the first trigger engine to receive a registration of the single base event request at the second trigger engine, the first trigger engine being configured to not communicate the first event request and the second event request to the second trigger engine in order to reduce a number of events to be remotely communicated, and the second trigger engine being further configured to receive notification of an event instance corresponding to a base event occurring at an event source; and upon receipt of the notification of the event instance, the second trigger engine communicating data indicative of the event instance to the first trigger engine, the first trigger engine being configured to determine to which of the first event request and the second event request the event instance corresponds, wherein if the event instance corresponds to the first event request, then the first trigger engine notifies the first client of the event instance, and wherein if the event instance corresponds to the second event request, then the first trigger engine notifies 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)
-
-
19. In a computer network, a method for notifying clients of events, comprising:
-
receiving, at a first trigger engine, of a first computing device, a first event request from a first client, the first event request corresponding to a first event on a remote server, the first event request including information specific to the first event request; receiving, at the first trigger engine, a second event request from a second client, the second event request corresponding to a second event on the remote server, the second request including information specific to the second event request; maintaining, at the first trigger engine, information specific to each of the first event request and the second event request; combining, at the first trigger engine, the first event request and the second event request into a single base event request; registering, by the first trigger engine, the single base event request and not the first event request and the second event request at a second trigger engine of the remote server in order to reduce a number of events remotely communicated; receiving, by the first trigger engine from the second trigger engine, notification of an instance of a base event, the notification including event-specific information about the instance of the base event; analyzing, by the first trigger engine, the event-specific information to determine to which of the first event request and the second event request the instance of the base event corresponds; notifying, by the first trigger engine, the first client if the event-specific information corresponds to the information specific to the first event request; and notifying, by the first trigger engine, the second client if the event-specific information corresponds to the information specific to the second event request. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification