Keep-AlivePoll Interval
Thekeep-alive poll interval species the interval (in seconds) at which the system polls
keep-aliveconnections for further requests. The default is 0.001 second, the lowest value
allowed.It is set to a low value to enhance performance at the cost of CPU usage.
Totune the poll interval, edit the Poll Interval eld on the conguration's Performance tab
HTTPtab, under Keep Alive Settings. In the command-line interface, use the poll-interval
propertyin the wadm set-keep-alive-prop command.
Keep-AliveThreads
Youcan congure the number of threads used in the keep-alive system in the Admin Console
byediting the Threads eld on the conguration's Performance tab HTTP tab, under Keep
AliveSettings. The default is 1. In the command-line interface, use the threads property in the
wadm set-keep-alive-prop command.
Tuningfor HTTP 1.0-Style Workload
SinceHTTP 1.0 results in a large number of new incoming connections, the default acceptor
threadsof 1 per listen socket would be suboptimal. Increasing this to a higher number should
improveperformance for HTTP 1.0-style workloads. For instance, for a system with 2 CPUs,
youmight want to set it to 2. You might also want to reduce the keep-alive connections, for
example,to 0.
HTTP1.0-style workloads would have many connections established and terminated.
Ifusers are experiencing connection timeouts from a browser to Web Server when the server is
heavilyloaded, you can increase the size of the HTTP listener backlog queue by setting the
HTTPlistener listen queue size to a larger value, such as 8192.
TheHTTP listener listen queue species the maximum number of pending connections on a
listensocket. Connections that time out on a listen socket whose backlog queue is full fail.
Tuningfor HTTP 1.1-Style Workload
Ingeneral, it is a trade-o between throughput and latency while tuning server-persistent
connectionhandling. The keep-alive poll interval and timeout control latency. Lowering the
valueof these settings is intended to lower latency on lightly loaded systems (for example,
reducepage load times). Increasing the values of these settings is intended to raise aggregate
throughputon heavily loaded systems (for example, increase the number of requests per second
theserver can handle). However, if there's too much latency and too few clients, aggregate
throughputsuers as the server sits idle unnecessarily. As a result, the general keep-alive
subsystemtuning rules at a particular load are as follows:
Ifthere's idle CPU time, decrease the poll interval.
Ifthere's no idle CPU time, increase the poll interval.
UsingMonitoringData to TuneYour Server
SunJavaSystem Web Server 7.0 Update 1 Performance Tuning,Sizing, and Scaling Guide 56