At the most conceptual level, the Event Engine is a central service that can be informed of a domain event that has occurred both within the ShareDo solution and externally.
Typically, the event engine provides a mechanism to analyse the event, possibly in relation to other events, apply decision logic, and then react to the event in some way, such as starting a workflow. This is often referred to as Complex Event Processing.
The event engine is a highly distributed, fault-tolerant service working on the concepts of:
- Nodes - A node is a server running the event engine service. A node advertises its presence to the configuration service. The configuration service then tells nodes what roles to run. A node can run 0 or many roles.
- Roles - A role is a resilient, self-healing process that runs on a node. The role is managed by the event engine service host. Usually, the same role is run on multiple nodes for redundancy (competing consumer). Roles consist of a receiver plus a pipeline of actions
Understanding the Event Engine diagnostics screen
The Event Engine diagnostics screen provides a view of the overall health of ShareDo's event management services. Generally speaking, a healthy event engine will show "all green"; especially:
Node and Role Information | Event processing is split into a number of distinct nodes, each running a role. In normal processing, all roles should be green. |
Event Engine Configuration | This section describes the core configuration settings for the event engine. |
Stream Stats | This section provides an overview of the current backlog of event processing. During normal operations, the backlog should be very low; however, this could climb in peak usage or when exceptional processing, such as RPA or data migration activities, are being undertaken. |