Execution model

The WebSphere Message Broker execution model is the system used to execute message flows through a series of nodes.

When an execution group is initialized, the appropriate LILs are made available to the runtime. The Execution Group runtime process starts, and spawns a dedicated configuration thread. In the message flow execution environment, the message flow is thread-safe. You can concurrently run message flows on many threads, without having to consider serialization issues. Any user-defined nodes that you implement should not compromise this threading model. Note the following points:

If, for example, you are using a user-defined node to process messages, and you are also using a user-defined parser to parse the incoming messages, both the node and parser will contain implementation functions. The broker calls these implementation functions, or callbacks, when certain events occur.

When an input message is received into the broker at that input node, it is sent to the user-defined node.

If the node wants to query the message to decide what to do with it, it calls a C utility function or a Java method, as appropriate for the language in which the node is written. The broker then invokes the user-defined parser on one of its implementation functions. This instructs the parser to start building the WebSphere Message Broker parse tree. The parser starts building the tree by invoking utility functions that create elements in the parse tree. The parser can be called multiple times by the broker, rather than just once.

Related concepts
Runtime environment
Brokers
Execution groups
Message flows overview
Related tasks
Designing a message flow