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:
- Heap Memory Utilization
- CPU Utilization
- Garbage Collection
- Idle Thread Count
- Socket Connection
- Thread Dumps
- Users Session Locked in the Weblogic Server
- 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.