Using
engine_connect or the Apama client library, it is possible to create topologies of correlators across which an application’s monitors can be partitioned. Use the
engine_inject tool described in
Injecting code into a correlator, or by means of the relevant functions of the client library, to load the relevant monitors directly on to the appropriate correlators, specifying the host and port for each correlator.
This scheme is suitable for most applications, as monitors can be loaded once when Apama is brought online. For some applications, however, there is a requirement for a dynamic routing mechanism that (depending on the requirements of the application) continually splits and/or duplicates the incoming event stream and sends it to two or more correlators. Use the IAF transportChannel attribute to specify the channel an event is sent to, and connect that channel to the appropriate correlators.