Post-RTC and Epilog Handling and Tuning Options
Inference agents manage writes to the cache, to the local L1 cache, and to the backing store in the post-RTC phase.
This can be used with parallel or sequential operations.
Use of parallel or sequential operations is set using the following boolean property in the CDD file:
Agent.agentClassName
.enableParallelOps
Parallel operations is an agent level property, so you can set it differently on each agent, depending on the needs. For reference documentation, see TIBCO BusinessEvents Developer’s Guide.
Parallel Operations
When the
enableParallelOps
property is set to
true
, parallel operations are used. Parallel operations is shown in the diagram for this section. It uses multiple threads and queues for more efficient processing during the post-RTC phase.
Sequential Operations
When theenableParallelOps
property is set to
false
, sequential operations are used. This means that all post-RTC phase operations are done on a single thread. Sequential operations ensures that the system waits to send a reply event confirming that some work has been done, until the result of the work can be seen in the cache.
Message Acknowledgment
With both parallel and sequential operations, message acknowledgement and releasing locks (epilog actions) wait for the three post-RTC tasks to complete. Note the following exceptions:
- Events consumed in a preprocessor. In this case acknowledgements are sent immediately.
- JMS messages with acknowledgment types
AUTO_ACKNOWLEDGE
andDUPS_OK_ACKNOWLEDGE
.
Advantages
- The following advantages are available when parallel operations is used:
- Allows batching of RTC database write operations.
- Provides thread and queue size controls.
- Offers the ability to use the database as the primary storage, and to use cache secondarily, to pass the objects between the Rete network and the database. This strategy is useful in some usage scenarios.
Other Tuning Properties
Tuning properties are set using CDD properties or settings at the appropriate level, depending on the scope.
See TIBCO BusinessEvents Configuration Guide for reference details.
Agent.AgentClassName.threadcount