Oracle SOA Suite 11g Performance Tuning Cookbook
上QQ阅读APP看书,第一时间看更新

Monitoring open sockets

Sockets and file handles are resources that are limited by the operating system, and can get exhausted in busy SOA Suite applications. This recipe shows us how to monitor the open sockets.

Getting ready

You will need to install Oracle SOA Suite and the Hyperic HQ server and agents for this recipe. Both Hyperic HQ and Oracle SOA Suite will need to be running. You will also need the login credentials for the Hyperic HQ console.

How to do it...

By following these steps, we can monitor the open sockets:

  1. Log in to the Hyperic HQ console.
  2. Open the Resources menu, and select Browse.
  3. Select the platform that has the server you want to monitor, which should be one of your SOA Suite managed servers.
  4. On the left-hand side of the Resources panel, select the WebLogic managed server that you wish to monitor.
  5. Scroll down the available graphs to find the display of the number of open sockets.
  6. Use the display range settings to view the time period you are interested in.

How it works...

The Hyperic HQ agent periodically connects to the WebLogic server instances that are in its inventory, and uses the JMX service to obtain metrics on a number of measurements, including the number of open sockets. It reports this data back to the server, which stores it in its database. We can then view this collected data by using the Hyperic console.

The number of open sockets can give an indication of how busy the system is, and as sockets are a resource that is often limited, this can cause a number of performance problems, as sockets are needed for much of the internal and external communication that goes on with an SOA Suite 11g application. Running out of available sockets can cause some very strange behavior that can be hard to diagnose if we don't realize the underlying cause.

There's more...

In Linux and Unix operating systems, each open socket uses a file descriptor, and the number of file descriptors available to a particular user is controlled by the operating system. As threads and open files also use file descriptors, and Oracle SOA Suite uses a lot of all the three resources, then running out of file descriptors can be a common cause of performance problems on Linux- or Unix-based operating systems, For this reason, it is especially important to monitor the number of open sockets on these environments.

See also

  • The Installing the Hyperic server, Installing Hyperic agents, and Configuring Configuring Alerts in Hyperic recipes
  • The Increasing the number of file descriptors in Linux recipe in Chapter 6, Platform Tuning