WebLogic Server Performance Monitoring Best Practices



WebLogic Server Performance Monitoring Best Practices

Performance Monitoring:

The following are some of the adverse conditions within the Weblogic Server to have performance degradation.

Poorly Tuned Application:

Applications that are poorly tuned typically manifest themselves via high CPU and I/O utilization on the Weblogic Server. This is due to the large number of sort and read operations that must be performed by the Weblogic Server. Poorly tuned Weblogic Servers typically manifest themselves via high I/O operations. This is due to a lack of pre-allocated memory for caching and other critical internal processes. Increasing the amount of memory allocated to the Weblogic Server will typically solve most Weblogic Server tuning issues. This, however, can actually decrease performance if there is a lack of memory resources on the server because the Weblogic cache space will be swapped in and out of memory. Therefore, it is also critical to review the CPU, memory, and I/O utilization of the server as a whole. Tuning of server resources is not addressed in this document.

 The following are the key areas:

  1. Heap Memory Utilization
  2. CPU Utilization
  3. Garbage Collection
  4. Idle Thread Count
  5. Socket Connection
  6. Thread Dumps
  7. Users Session Locked in the Weblogic Server
  8. Multicasting

Lock Conflicts:

Poorly tuned applications tend to have components that lock objects or resources in the Weblogic Server for long periods. Although Weblogic Server functions correctly under these conditions, the users may experience poor response times or even application unavailability. It is important to detect the processes that are preventing others from retrieving information. Tuning the Weblogic Server executed by that process will improve the response time of the application. More importantly, the number of users are being blocked is an indication of the level of application unavailability.

Note: Frequent lock conflicts typically indicate that there is an application tuning issue.

Poor Response Time:

Applications occasionally have problems that cause the user to experience poor response times. It is important to measure the response time of the Weblogic Server so that poor response time periods can be detected. Once such a period is detected, further research and analysis can be performed to find the root cause of the response time issues.

Device Errors:

Occasional disk errors typically have no adverse effect on the Weblogic Server. Frequent disk device errors have the potential to cause Weblogic Server corruption and slow performance. Therefore, monitoring the disk errors encountered by Weblogic Server is important. Network errors cause frequent retransmits having an adverse effect on Weblogic Server performance. It is a good idea to monitor the traffic between your client applications and the server. An application designed and tuned for a slow network performs great on a fast network; however, the opposite is not true.

CPU Over load:

CPU time is the amount of time that the Weblogic Server spent processing the business methods that are deployed in the Weblogic Server. If this is the main timed event, tuning business methods that are deployed and/or increasing server CPU resources will provide the greatest performance improvement.