Tuning application servers

 

+

Search Tips   |   Advanced Search

 

Overview

The WAS contains interrelated components that must be harmoniously tuned to support the custom needs of your end-to-end e-business application.

This group of interrelated components is known as the queuing network. The queuing network helps the system achieve maximum throughput while maintaining the overall stability of the system.

The following steps describe various tuning tasks that may improve your application server performance. We can choose to implement any of these application server settings.

 

Steps for this task (dependent on configuration)

  • Tune the object request broker.

    An Object Request Broker (ORB) manages the interaction between clients and servers, using the Internet InterORB Protocol (IIOP). It supports client requests and responses received from servers in a network-distributed environment. We can tune the ORB with the following parameters:

  • Tune the XML parser definitions.

    • Description: Facilitates server startup by adding XML parser definitions to the jaxp.properties and xerxes.properties files in the ${install_root}/jre/lib directory. The XMLParserConfiguration value might change as new versions of Xerces are provided.

    • How to view or set: Insert the following lines in both files

      javax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl 
      javax.xml.parsers.DocumentBuildFactory=org.apache.xerces.jaxp.
                 DocumentBuilderFactoryImpl
      org.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.
                StandardParserConfiguration
      

    • Default value: None

    • Recommended value: None

  • Tune the dynamic cache service.

  • Tune the Web container.

    The WAS Web container manages all HTTP requests to servlets, JSPs and Web services. Requests flow through a transport chain to the Web container. The transport chain defines the important tuning parameters for performance for the Web container. There is a transport chain for each TCP port that WAS is listening on for HTTP requests. For example, the default HTTP port 9080 is defined in Web container inbound channel chain. Use the following parameters to tune the Web container:

    • HTTP requests are processed by a pool of server threads. The minimum and maximum thread pool size for the Web container can be configured for optimal performance. Generally, 5 to 10 threads per server CPU will provide the best throughput. The number of threads configured does not represent the number of requests WebSphere can process concurrently. Requests are queued in the transport chain when all threads are busy. To specify the thread pool settings:

      1. Click...

        Servers | Application Servers | servername | Web Container Settings | Web Container | Web container transport chains

      2. Select the normal inbound chain for serving requests. This will usually be named WCInboundDefault, on port 9080.

      3. Click TCP Inbound Channel (TCP_2).

      4. Set Thread Pools under Related Items.

      5. Select WebContainer.

      6. Enter values for Minimum Size and Maximum Size.

    • The HTTP 1.1 protocol provides a "keep-alive" feature to enable the TCP connection between HTTP clients and the server to remain open between requests. By default WAS will close a given client connection after a number of requests or a timeout period. After a connection is closed, it will be recreated if the client issues another request. Early closure of connections can reduce performance. Enter a value for the maximum number of persistent requests to (keep-alive) to specify the number of requests that are allowed on a single HTTP connection. Enter a value for persistent timeouts to specify the amount of time, in seconds, that the HTTP transport channel allows a socket to remain idle between requests. To specify values for Maximum persistent requests and Persistent timeout:

      1. Click...

        Servers | Application Servers | servername | Web Container Settings | Web Container | Web container transport chains

      2. Select the normal inbound chain for serving requests. This will usually be named WCInboundDefault, on port 9080.

      3. Click HTTP Inbound Channel (HTTP_2).

      4. Enter values for Maximum persistent requests and Persistent timeout.

  • Tune the EJB container.

    An EJB container is automatically created when you create an application server. After the EJB container is deployed, use the following parameters to make adjustments that improve performance.

    See also EJB method Invocation Queuing.

  • Tune the session management.

    The installed default settings for session management are optimal for performance.

  • Tune the data sources and associated connection pools.

    A data source is used to access data from the database; it is associated with a pool of connections to that database.