Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
docs:3400_how_to:1100_miscellaneous:1460_optimise [2022/08/21 12:10] – ↷ Links adapted because of a move operation administratordocs:3400_how_to:1100_miscellaneous:1460_optimise [2025/06/12 03:59] (current) – Change to AwareIM aware_support3
Line 3: Line 3:
 ====== How to optimise application for best performance ====== ====== How to optimise application for best performance ======
  
-Out-of-the-box //**Aware IM**// offers a pretty good performance for many applications. However, it does not mean that you should always rely on Aware IM to deliver the best performance. A lot depends on how you write your application as well.  The following areas are important when you write an application:+Out-of-the-box //**AwareIM**// offers a pretty good performance for many applications. However, it does not mean that you should always rely on AwareIM to deliver the best performance. A lot depends on how you write your application as well.  The following areas are important when you write an application: 
 + 
 +  * Performance of business rules 
 +  * Performance of queries 
 +  * How quickly each request from the user is processed in your system
  
-  - Performance of business rules 
-  - Performance of queries 
-  - How quickly each request from the user is processed in your system 
 Below are some recommendations on how to improve performance in each of these areas: Below are some recommendations on how to improve performance in each of these areas:
  
Line 14: Line 15:
   - Unconditional rules can be expensive (especially if they use aggregate operations). Make them conditional (using ''WAS CHANGED'' expression, for example)   - Unconditional rules can be expensive (especially if they use aggregate operations). Make them conditional (using ''WAS CHANGED'' expression, for example)
   - Check for repetitive execution of rules. The rule engine can execute rules repetitively if the next rule triggers a condition that causes the previous rule to fire again. Optimise this carefully. Use rule priorities to make sure that expensive rules are only executed once   - Check for repetitive execution of rules. The rule engine can execute rules repetitively if the next rule triggers a condition that causes the previous rule to fire again. Optimise this carefully. Use rule priorities to make sure that expensive rules are only executed once
-  - If you find that a particular query does not perform well replace it with a stored procedure (//**Aware IM**// allows you to use stored procedures – see the [[docs:1300_user_guide|Aware IM User Guide]] for more details)+  - If you find that a particular query does not perform well replace it with a stored procedure (//**AwareIM**// allows you to use stored procedures – see the [[a_f:a:exec_sp|EXEC_SP]] and [[a_f:f:af:exec_spf|EXEC_SPF]] for more details)
   - If you need to support many concurrent users make sure that there are no CPU-extensive operations in your application. Or make sure that the CPU-extensive operations are executed at night or by a separate server.   - If you need to support many concurrent users make sure that there are no CPU-extensive operations in your application. Or make sure that the CPU-extensive operations are executed at night or by a separate server.
-  - Add additional servers to scale up your system if necessary (//**Aware IM**// does support scaling and load balancing+  - Add additional servers to scale up your system if necessary (//**AwareIM**// supports scaling and load balancing)
  
  
  
  • Last modified: 2022/09/13 18:10