Siebel Performance Tuning Guide > Tuning the Web Server Computer for All UNIX and Linux Platforms >

Tuning an Apache Web Server for Applicable UNIX and Linux Platforms


Several of the Web servers supported for use with Siebel Business Applications are based on the Apache Web Server. These include Oracle HTTP Server, IBM HTTP Server, and HP Apache Web Server, which are supported on certain UNIX and Linux operating systems.

This topic describes recommended parameter settings that are optimized for scalability and performance on an Apache Web Server. You can further adjust these settings at your discretion to optimize the performance of your Web server. For Web server support details, see Siebel System Requirements and Supported Platforms on Oracle Technology Network.

For more information about tuning the Web server, see:

The default setting for ThreadLimit for the Apache Web Server is 64, but this parameter can be set to a much higher number, subject to limitations from kernel settings. Related parameters include ThreadsPerChild, MaxClients, and ServerLimit.

Many parameter settings are subject to available memory and other resources. High values for parameters such as MaxClients or ThreadLimit can increase memory usage. User lower values to reduce memory usage.

  • ThreadLimit = 20000 is the maximum value supported by the Apache Web Server. You can set this parameter to a number your system supports.

    NOTE:  The ThreadLimit parameter must be executed before other parameters.

  • ThreadsPerChild = Number of threads per child. Cannot exceed ThreadLimit.
  • MaxClients = Maximum connection.
  • ServerLimit = Typically, set this parameter to the value of MaxClients divided by the value of ThreadsPerChild. (If MaxClients and ThreadsPerChild are set the same, then set ServerLimit to 1.)

To configure parameters for an Apache Web Server

  1. Using a text editor, set values for parameters in the worker.c section of the file Web_server_install/conf/httpd.conf, where Web_server_install is the root directory in which your Web server is installed. Set the parameter values as shown in the table below:

    ThreadLimit

    N
    where N is a value 1 or 1.2 times the maximum number of concurrent users (threads). The value for the applicable parameters can be set equal to or up to 1.2 times the number of concurrent users the Web server must support. The specific values to use for each applicable parameter depend on your organization's requirements.

    ServerLimit

    MaxClients divided by ThreadsPerChild

    StartServers

    1

    MaxClients

    ServerLimit multiplied by ThreadsPerChild

    MinSpareThreads

    1

    MaxSpareThreads

    N
    where N is a value greater than or equal to the sum of MinSpareThreads and ThreadsPerChild.

    ThreadsPerChild

    N
    where N is a value less than or equal to ThreadLimit.

    MaxRequestsPerChild   

    0

    By default, the Web server provides persistent connections. Consider setting the KeepAlive parameter to Off to prevent the Web server from providing persistent connections and to free connections for reuse. However, using this setting can incur a cost, because memory will be used to close and set up new TCP/IP connections. Alternatively, you can reduce the value for the KeepAliveTimeout parameter so that a thread is reused more quickly.

    NOTE:  For HP-UX, if you are not using multiplex sessions, then make sure the kernel parameter max_thread_proc is set to a number greater than two times N.

  2. In the file httpd.conf, also set the following values:
    • The value for ServerName must match the Primary Internet Address you used in installing the SWSE.
    • Change the values for User and Group to a valid computer user and group:
      • Ideally, the user ID has no privileges that allow access to files other than those used by the Siebel application. This user, however, does have full access rights (read, write, execute) to the SWSE installation directory and its subdirectories.
      • It is recommended that the group be created specifically for running this server.

        CAUTION:  For security reasons, it is recommended not to use root for User or Group.

    • The value for UseCanonicalName is recommended to be set to Off. It must be set to Off if you are load-balancing your Web servers.
    • If you are not using the CGI functionality of the Web server, then you might want to comment out the line that loads the CGI module. Doing so will make tracking Web server processes simpler, because there will be always one child process. The line is as follows:

    LoadModule cgid_module modules/mod_cgid.so

    • Set MaxKeepAliveRequests to 0.
Siebel Performance Tuning Guide Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices.