CHAPTeR 9 DXP PeRfORMANCe OPTIMIzATION Predict Performance testing will be conducted for various workloads; using the test results, the performance in production environment will be predicted. Performance Debugging Framework When we encounter performance issues in DXP applications, we troubleshoot the root cause of the performance issue. Generally, troubleshooting performance issues is a complex exercise because it involves all the layers and components in the web request processing pipeline. In this section we discuss a performance debugging framework that provides proven methodical steps for troubleshooting performance issues. The main steps of the performance debugging process are as follows: • Step 1: Identify the root cause component/system. • Step 2: Fix and Optimize the component causing the performance issue. • Step 3: Perform load testing, peak testing, and stress testing to ensure that a fix done in Step 2 works optimally in all scenarios. Let’s discuss each of these steps in detail as follows. Identify the Root Cause We need to check the performance at each layer to understand the component causing the performance issue. This is often the most complex step in the process. We need to devise test methods for each layer and for components involved in the web request processing pipeline. In addition, we need to do runtime profiling of the application and log analysis to get more insights into the problem-causing element. Following are various methods to identify the performance root cause: • Perform layer-wise performance testing. Identify the time taken at each layer involved in the web request processing pipeline. Starting from the presentation layer (Java server pages/active server pages) to the database layer, get the average execution time (for more than ten iterations). At a minimum, we need the execution time for following: • Average load time taken by the overall web page 247
Building Digital Experience Platforms Page 260 Page 262