Implementing Specific Enhancements
Scaling involves adding hardware resources or engines. Tuning involves changes to the AppNode config files or scripts and changes to the process design. When making any type of change, it is crucial to keep other factors stable so that the effect can be correctly measured.
For example, a sample list of modifications might include:
- Allocate additional memory for the engine JVM
- Increase the number of engine threads
- Enable flow control
These changes can be implemented in an incremental way. The reasonable approach is to implement the first modification, and then test to measure the effect of this change. After a satisfactory value is determined, implement the next modification and measure the effect of the first two changes combined, and so on.
In this example, all the modifications are related to the same resource and memory usage. If the engine requires more memory, then increasing the number of threads in the JVM would be ineffective. However, some scenarios might require measuring the effect of each modification separately, by backing out one change before implementing another.