If one overloads Esper with events through a JMS queue, will Esper queue events internally until it processes them or will events stay in the JMS queue until Esper process them?
Esper does not have an internal event queue. The threading is completely driven by the application that embeds Esper. The relevant doc chapter is here. Therefore, if your application uses the listener model to read messages that arrive from a JMS queue, then your JMS implementation MOM middleware (MOM=message-oriented middleware, i.e. ActiveMQ and many others) provides the threads that deliver messages. Say you add N listeners (javax.jms.MessageListener) to JMS destination then the MOM supplies N threads that each deliver a message asynchronously, on message arrival. If your application has the JMS listener send one or more events per message into Esper, then the thread blocks until Esper has processed the event, and only after Esper has processed each event does your listener code return from the onMessage method, and the MOM delivers the next message to that listener. As part of the Esper distribution comes an example “JMS Server Shell” and client, which are a configurable JMS-based
Related Questions
- If one overloads Esper with events through a JMS queue, will Esper queue events internally until it processes them or will events stay in the JMS queue until Esper process them?
- What should I do if the WebLogic Integration process engine does not process some messages or events in the JMS queue?
- How do I correct DPGERR events with Watch Process program after setting some processes in watch list?