The Talon Manual

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The message will only be injected on Started engines operating in the Primary role. Calls to inject are ignored on backup instances since it is expected that the injected message will be replicated from the primary. Calls made while an engine is replaying from a transaction log (e.g. State.Starting) are similarly ignored as those calls would interfere with the stream being replayed. An application that injects messages from an external source may call AepEngine.waitForMessagingToStart() to avoid an injected message being discarded while an engine is transitioning to a started, primary role. It is important to note that message injection is thus effectively a BestEffort operation because injections of messages that are in the event multiplexer queue at the time of failure will be lost. Reliable injection can be achieved via scheduleMessage(IRogMessage, int, com.neeve.aep.AepScheduleEvent.HAPolicy) though fault-tolerant scheduling incurs slight slightly higher overhead.

Message Pooling Considerations

...