Controlling Execution of TIBCO ActiveMatrix BusinessWorks Services

Process starters

Process starters create process instances to handle incoming events.

Flow Limit:

Limits the number of process instances created by a process starter. This allows you to control the flow of processing so that incoming events are no longer accepted when the limit is reached.

Process instances

When the process definition is executed, it is known as a process instance.

Process instances consume memory and CPU resources on your system. Depending on the available machine resources, you may only be able to run a limited number of process instances concurrently.

Process instances typically remain in memory as long as they are executing an activity.

If the process instance is waiting for an incoming event (for example, a Wait for Adapter Message activity), the process instance can be paged out to disk and resumed later after the event arrives.

New process instances are paged out to disk until there is available memory and resources to accommodate them.

MaxJobs:

Specifies the maximum number of process instances that can concurrently be loaded into memory.

Activation Limit:

Can be used to specify that a process instance loaded into memory must remain there until it completes, process instance should not be paged out to disk until it completes.

ActivationLimit is applied when MaxJobs property is set to a value > 0.

if you set Max Jobs to 5, the process engine can only keep 5
process instances in memory. Any process instances created once the maximum is reached must be paged out to disk.

Disadvanteges

Specifying a value for Max Jobs causes the process engine to incur some overhead for managing the paging of process instances to and from disk. If you have sufficient system resources and do not expect incoming events to exceed the limits of your system, consider specifying Max Jobs as 0.

This allows the process engine to create an unbounded number of process instances and eliminates the overhead of paging.

Process engine

Process execution is controlled by the process engine.

The process definition is executed by a TIBCO ActiveMatrix BusinessWorks process engine. A process engine creates instances of process definitions. When the process definition is executed, it is known as a process instance.

When a process engine reaches the specified Flow Limit, it is placed in a FLOW_CONTROLLED state. In this state, the process engine can continue executing existing process instances, but new process instances are not allowed.

Incoming messages can then be directed to another process engine. A process engine will resume creating new process instances once a sufficient number of its current process instances have completed. Typically a process engine comes out of the FLOW_CONTROLLED state when the number of process instances completed is approximately half of the value specified for the Flow Limit property.

About Okan Pulukcu
IT Consultant and Founder of WodenSoft IT Solutions and Consultancy. Wodensoft delivering various services mainly focused on Software Development, Integration Solutions, Enterprise Solution Architecture and System Monitoring in various industries.

Leave a comment

Your email address will not be published.


*