Synchronization performance
You can improve synchronization performance by allocating sufficient resources, restructuring the rule project, and reducing data transfer.
- Allocate sufficient resources
- Ensure that your system has enough resources. Provide adequate
heap size to both Rule Designer and Decision Center.Note: Avoid heap fragmentation. Configuring your JVM might require several iterations of generating and analyzing the
verbose:gcoutput and applying changes that you optimally set your environment. - Restructure the rule project
- Split your rules among multiple top-level packages. Synchronization
is done at the top level. If you create all your rules under one top-level
package, they are all sent from Rule Designer to Decision Center in
the first publish.
A high number of rules in a top-level package can cause a significant bottleneck during synchronization. This case is especially true if a new rule project is being created as a result of synchronization, either as a publish of the project from Rule Designer to Decision Center, or as the creation of a new project on Rule Designer from Decision Center. If you divide your rules among multiple top-level packages, the amount of memory that is required to send a top-level package to Rule Designer from Decision Center, or conversely, is smaller because of the fewer number of rules (see Setting up a project hierarchy).
- Reduce transfer of data
- After you create a new rule project from Decision Center in Rule Designer, you do not need to synchronize the entire rule project. Instead, you can synchronize with a local copy of the project. You decrease the amount of the memory that is used because only the changed rules are sent from Decision Center to Rule Designer.