A technique that can improve system performance, rules assembly involves generating and compiling Java code corresponding to a rule at the moment that the Java code is first needed to execute, rather than in advance.
This late-binding technique avoids the cost of creating and compiling code that is never used, and can produce more efficient Java code than "generation at Save.." approach.
A second use of the rule (by the same requestor or another requestor with the same RuleSet list and on the same node) executes the precompiled Java code for the rule, so rules assembly is sometimes called first-use assembly (or fua) .
Process Commander generates rules-assembly Java for
activities, stream rules, most decision and declarative rule
types, parse rule types, and others. Click the Show Java
toolbar button () when it appears to view an
approximate preview of the run-time Java generated by the rules
assembly facility. (The final Java may have additional inlining
and optimizations, and reflects the RuleSet list of the
user.)
Rules assembly processing applies information in the Aspect and Implementation fields on the Advanced tab of the Class form to control the assembly process.
Use the Performance tool to view statistics about rules assembly processing and caching for your session. Use the System Management application and the shutdown rule usage snapshot to view system-wide statistics.
An in-memory cache on each node provides fast access to the CLASS files of assembled and compiled Java.
Don't confuse this rules
assembly cache with the rule cache which speeds rule
resolution for many rule types, including some types that are
not assembled into Java.
![]() |
rule cache, rules assembly cache, temporary files |
![]() |
Caching in
Process Commander
Using the Performance tool Working with the rules assembly cache Working with the shutdown rule usage facility |