Tibco BusinessEvents Best Practices


  • Use Concept constructor for simple concept creation if complicated Event Payload-to-Concept XSLT mapping is not involved.
  • Reduce the number of types in a rule join scope. A rule performance degrades and it memory consumption overhead increases if more objects satisfy a rule scope and join filter conditions. i.e RuleA : Scope(A,B,C),Condition(A>B && B=C),Action(doSomething)
  • Reduce use of unequal join filter conditions in a rule i.e a>b
  • Rule Actions should be optimized. if synchronous procedural calls in the rule actions are time consuming then going the asynchronous way is a better option, however it depends on whether the procedural call is available in asynchronous form.
  • Serialization cost, the heavier the object the more the serialization cost. i.e Statemachines, Inheritance , relationships make the object heavy.
  • Establish a balance between Sizing and Performance parameters.Not everything needs to be stateful and be stored in cache, use discretion by having local JVM in memory ,Cache only and cache + memory storage for object types
  • Exploit the BE PreProcessor to filter out events that are not required before they hit Working Memory (assuming your Destination doesn't give you enough detail).
  • Exploit JVM settings (server JVM, hotspot, GC settings, etc )

No comments:

Post a Comment