-
Notifications
You must be signed in to change notification settings - Fork 6
Runtime Environments
When creating SPQR the focus was clearly set on its ease of use. Next to pipeline instantiation this was a special issue when designing and implementing new framework components. Developers should be enabled to create new pipeline components as fast as possible without the need to write too much of glue code.
Therefore SPQR was provided runtime environment for each component type abstracting away lots of functionality like message retrieval and sending or communicating with a surrounding micro pipeline.
According to the three different component types the framework knows there exists three different runtime environments:
- source runtime environment
- operator runtime environment or delayed and direct response operators
- emitter runtime environment
When instantiating a new pipeline component - e.g a source reader or content aggregator (operator) - one of the above-named environments gets instantiated and receives the component instance for execution. The environment handles all queue communication, lifecycle activities and provides each incoming message to its assigned component (...where the source environment is obviously a special one as it does not receive messages from an internal queue).
SPQR - stream processing and querying in realtime by Otto Group