Performance methodology
There are four steps for evaluating performance of a WebSphere Commerce site based on WebSphere Commerce Server.
- Identifying the workload
- Data monitoring and analysis
- Top-down tuning approach
- Closed-loop cycle
Identifying the workload
The workload defines how the performance of a system is evaluated. A workload should have the following characteristics:
- Measurable: A metric that can be quantified, such as throughput and response time.
- Reproducible: The same results can be reproduced when the same test is executed multiple times.
- Static: The same results can be achieved no matter for how long you execute the run.
- Representative: The workload realistically represents the stress to the system under normal operating considerations.
Data monitoring and analysis
Improving performance is always a matter of identifying where the bottleneck is, and making some changes in order to avoid it. The ability to monitor the system performance characteristics and identify the source of the problem is one of the most essential skills to ensure good performance of the system. All the tools have strengths and weaknesses. Some tools may alter the flow and the timing of the applications, but they provide a lot of information to the developer and the system administrator, such as Rational Application Developer's Profiling function. Other tools have minimal impact to the overall system but provide very little information, or offer very specific information that may not be helpful to identify the source of the problem.
Top-down tuning approach
Performance tuning can be a very time consuming task. You may not necessarily have all the time optimize every single aspect of your WebSphere commerce site. A top-down approach means making changes to the system level first, before approaching the application level, and then to the programming level. By removing the inefficiencies from the top level, the underlying problems at the lower level may potentially be minimized.
Levels Tuning System More processors with faster speed
More Memory
Faster Network
Faster Disk
Operating system level configurationApplication Web server configuration
Application server configuration
Commerce application configuration
Database configurationProgramming WebSphere commerce programming guideline
Java performance tips
The system level consist of components such as processors, memory sub-system, network configuration, and disk sub-system. If there is a bottleneck in this level, it is usually easier to identify and relatively easy to address by modifying the hardware configuration or operating system level optimization. Closed-loop cycle
The closed-loop cycle is a method for implementing the top down tuning approach. This method prescribes the way to gather and analyze data, come up with ideas for resolving issues, implement enhancements, and test results. The process is driven by data, and the results from one iteration of the loop drive the next iteration of the loop.
A closed-loop cycle has to be done in a controlled environment where each change is well documented and can be undone at a later time. In theory, after many iterations, since only the enhancements with positive test results are being used, the overall WebSphere commerce site's performance should have been improved.