Tuning appservers


 

+

Search Tips   |   Advanced Search

 

The following steps describe various tuning tasks that may improve the WAS appserver performance.

  1. Tune the object request broker (ORB).

  2. Tune the XML parser definitions.

    Facilitate server startup by adding XML parser definitions to...

    ${APP_ROOT}/jre/libjaxp.properties
    ${APP_ROOT}/jre/lib/xerxes.properties

    The XMLParserConfiguration value might change as new versions of Xerces are provided.

    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

  3. Tune the dynamic cache service.

  4. Tune the Web container.

    The 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 the product is listening on for HTTP requests. For example, the default HTTP port 9082 is defined in Web container inbound channel chain.

    • 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 provides the best throughput. The number of threads configured does not represent the number of requests that WAS can process concurrently. Requests are queued in the transport chain when all threads are busy.

      To specify the thread pool settings:

      1. Go to...

        Servers | Server Types | WebSphere application servers | server_name | Web container settings | Web container | Web container transport chains

      2. Select the normal inbound chain for serving requests. This chain is typically called WCInboundDefault, and listens on port 9082.

      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 closes a given client connection after a number of requests or a timeout period. After a connection is closed, it is 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. Go to...

        Servers | Server Types | WebSphere application servers | server_name | Container Settings | Web container | Web container transport chains

      2. Select the normal inbound chain for serving requests. This chain is typically called WCInboundDefault, and listens on port 9082.

      3. Click HTTP Inbound Channel (HTTP_2).

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

  5. Tune the EJB container.

    An EJB container is automatically created when creating an appserver. After the EJB container is deployed, to tune...

    See also EJB method Invocation Queuing.

  6. Tune the session management.

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

  7. 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.

  8. Tune the URL invocation cache.

    Each Java Server Page is a unique URL. If we have more than 50 unique URLs that are actively being used, increase the value specified for the invocationCacheSize JVM custom property. This property controls the size of the URL invocation cache.

 

Related tasks

Tuning URL invocation cache
Session management tuning
Tuning parameter settings
Administer appservers