Best practices

The framework provides powerful tools for managing large and small buildings with increasingly sophisticated control features.

Running in a remote controller

When running the framework in a remote controller, such as the JACE-8000, configure your PX graphics bindings and number of points carefully. While a remote controller can handle hundreds of points and multiple PX bindings, memory has its limits. During a heavy processing period, the system may slow and report server session time out errors.

Refreshing cache memory

The framework requires memory based on the number of hierarchies, tags and points you configure for real-time and trend analysis. As you create hierarchies, tag points, build algorithms, and create alerts you should refresh cache memory frequently. To do so, right-click Config > Services > AnalyticService and click Actions > Refresh Cache.

Once your framework data model is configured and stable, you refresh cache only after changing the configuration in some way. On a system with hundreds of points and complex algorithms, a refresh can take a substantial amount of time. Plan any framework changes so that your station will have time to refresh cache.

Invoking the Stop Caching action interrupts a refresh. You could use this action if a Refresh Cache action is taking a very long time.

Algorithms

As you expand the framework’s potential, keep these algorithm best practices in mind:

  • Define data sources carefully. When you refresh cache, the system scans every node in the hierarchy to determine where to run algorithms. The data sources, as well as some configuration properties, determine which nodes to run against.
  • Once an algorithm has executed, set up a poll timer/poll queue to run it again at a specified time.
  • While it is physically possible to nest an algorithm inside of another algorithm, the preferred method is to configure the Data property of the DataSourceBlock using the alg:otherAlgorithmName syntax.
  • To make an algorithm Wire Sheet that is particularly complex with lots of blocks and links easier to build and understand, you should organize your logic in Logic Folder blocks.