Event IO
From RuleCore Support
Contents |
Event IO
Introduction
Most likely, the events to be processed by ruleCore (or any other Complex Event Processing solution), will be generated by a wide range of systems and platforms, delivered on a mix of transports and protocols and also they come in various shapes and forms. In addition to coping with this heterogeneous environment and preconditions, the ruleCore CEP Server itself imposes two requirements on the events that are to be processed;
- their format must comply to the ruleCore event format.
- the events must arrive and be consumed by the engine in order of increasing event timestamp.
Events that has passed through the Event IO module are guaranteed to fulfil both these requirements. Also, the Event IO makes it a lot easier to integrate the ruleCore server with the rest of your systems environment. The Event IO module allows for this easy integration by having built-in support for sending and receiving events via a plethora of transports and protocols, all thanks to being built upon the Mule ESB software.
To summarize, the Event IO module acts a kind of bridge between the ruleCore engine and the outside world. The Event IO has two main responsibilites;
- receive and forward all valid and authorized events from the external system(s) to the engine, ordered by increasing timestamp.
- forward any events generated by the ruleCore engine to the (external) event subscribers.
Logical Model
The Event IO module may be seen as a bi-directional pipeline, each pipe consisting of a chain of event processing sub-steps or sub-components. Each processing step filters, refines or enriches the event before passing it on to the next step. The default configuration ties together a basic set of event processing steps to be able to fulfil the above mentioned requirements; event format compliance and an ordered event stream. Additionally, it exposes a set of integration/configuration points at which one may add or change the behaviour of the default configuration.
An in-depth description of the Event IO logical model can be found here.
Physical Model
The logical model is translated into a physical model, from which the actual implementation is done. The various event processing steps are translated into Mule descriptors/components and the different event streams are mapped to Mule endpoints.
More information about the physical model and the actual implementation using the Mule ESB software is described here.