Differences
This shows you the differences between two versions of the page.
| 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 administrator | docs: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 |
| + | |||
| + | * 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 '' | - Unconditional rules can be expensive (especially if they use aggregate operations). Make them conditional (using '' | ||
| - 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: |
| - 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 | + | - Add additional servers to scale up your system if necessary (//**AwareIM**// supports |