About Oracle HTTP Server

Oracle HTTP Server Performance Tuning 5-5

5.2.1 How Persistent Connections Can Reduce Httpd Process Availability

If your browser supports persistent connections, you can support them on the server using the KeepAlive directives in the Oracle HTTP Server. Persistent Connections MaxRequestsPerChild This directive maps to the Max Requests Per Child Server Process field on the Performance Directives screen. Specifies the number of requests each child process is allowed to process before the child process dies. The child process ends to avoid problems after prolonged use when Apache and any other libraries it uses leak memory or other resources. On most systems, this is not needed, but some UNIX systems have notable leaks in the libraries. For these platforms, set MaxRequestsPerChild to 10000; a setting of 0 means unlimited requests. This value does not include KeepAlive requests after the initial request per connection. For example, if a child process handles an initial request and 10 subsequent keep alive requests, it would only count as 1 request toward this limit. Default Value: 0 Note : On Windows systems MaxRequestsPerChild should always be set to 0 unlimited since there is only one server process. MaxSpareThreads MinSpareThreads These directives map to the Maximum Idle Threads and Minimum Idle Threads fields on the Performance Directives screen. Note that these parameters are not available in mod_ winnt Windows platform. Controls the server-pool size. Rather than estimating how many server threads you need, Oracle HTTP Server dynamically adapts to the actual load. The server tries to maintain enough server threads to handle the current load, plus a few additional server threads to handle transient load increases such as multiple simultaneous requests from a single browser. The server does this by periodically checking how many server threads are waiting for a request. If there are fewer than MinSpareThreads, it creates a new spare. If there are more than MaxSpareThreads, some of the spares are removed. Default Values: MaxSpareThreads: 75 MinSpareThreads: 25 Timeout This directive maps to the Request Timeout field on the Performance Directives screen. The number of seconds before incoming receives and outgoing sends time out. Default Value: 300 KeepAlive This directive maps to the Multiple Requests Per Connection field on the Performance Directives screen. Whether or not to allow persistent connections more than one request per connection. Set to Off to deactivate. Default Value: On MaxKeepAliveRequests The maximum number of requests to allow during a persistent connection. Set to 0 to allow an unlimited amount. If you have long client sessions, consider increasing this value. Default Value: 100 KeepAliveTimeout This directive maps to the Allow With Connection Timeout seconds field, which is located under the Multiple Requests Per Connection field, on the Performance Directives screen. Number of seconds to wait for the next request from the same client on the same connection. Default Value: 5 seconds Table 5–1 Cont. Oracle HTTP Server Configuration Properties Directive Description