perf.html revision db81e057b060e365d840d9a1d35a5797192efa81
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<html>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<head>
295ab659a4fe68c2ec69a604945f1dccfeb75ee6Eugen Kuksa<title>Hints on Running a High-Performance Web Server</title>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa</head>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<BODY
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa BGCOLOR="#FFFFFF"
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa TEXT="#000000"
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa LINK="#0000FF"
295ab659a4fe68c2ec69a604945f1dccfeb75ee6Eugen Kuksa VLINK="#000080"
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa ALINK="#FF0000"
649777b52106e52535b18ab234a53974fad0268aEugen Kuksa>
649777b52106e52535b18ab234a53974fad0268aEugen Kuksa<!--#include virtual="header.html" -->
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<h1 ALIGN="CENTER">Hints on Running a High-Performance Web Server</H1>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen KuksaRunning Apache on a heavily loaded web server, one often encounters
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksaproblems related to the machine and OS configuration. "Heavy" is
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksarelative, of course - but if you are seeing more than a couple hits
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksaper second on a sustained basis you should consult the pointers on
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksathis page. In general the suggestions involve how to tune your kernel
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksafor the heavier TCP load, hardware/software conflicts that arise, etc.
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
295ab659a4fe68c2ec69a604945f1dccfeb75ee6Eugen Kuksa<UL>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<LI><A HREF="#AUX">A/UX (Apple's UNIX)</A>
649777b52106e52535b18ab234a53974fad0268aEugen Kuksa<LI><A HREF="#BSD">BSD-based (BSDI, FreeBSD, etc)</A>
649777b52106e52535b18ab234a53974fad0268aEugen Kuksa<LI><A HREF="#DEC">Digital UNIX</A>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<LI><A HREF="#Linux">Linux</A>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<LI><A HREF="#SGI">SGI</A>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<LI><A HREF="#Solaris">Solaris</A>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<LI><A HREF="#SunOS">SunOS 4.x</A>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa</UL>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<HR>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<H3><A NAME="AUX">
2220152f8ed97959c62abfb6625873a725a71013Eugen KuksaA/UX (Apple's UNIX)
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa</A></H3>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
295ab659a4fe68c2ec69a604945f1dccfeb75ee6Eugen KuksaIf you are running Apache on A/UX, a page that gives some helpful
295ab659a4fe68c2ec69a604945f1dccfeb75ee6Eugen Kuksaperformance hints (concerning the <I>listen()</I> queue and using
295ab659a4fe68c2ec69a604945f1dccfeb75ee6Eugen Kuksavirtual hosts)
295ab659a4fe68c2ec69a604945f1dccfeb75ee6Eugen Kuksa<A HREF="http://www.jaguNET.com/apache.html">can be found here</A>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<P><HR>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<H3><A NAME="BSD">
2220152f8ed97959c62abfb6625873a725a71013Eugen KuksaBSD-based (BSDI, FreeBSD, etc)
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa</A></H3>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
649777b52106e52535b18ab234a53974fad0268aEugen Kuksa<A HREF="perf-bsd44.html#initial">Quick</A> and
649777b52106e52535b18ab234a53974fad0268aEugen Kuksa<A HREF="perf-bsd44.html#detail">detailed</A>
649777b52106e52535b18ab234a53974fad0268aEugen Kuksaperformance tuning hints for BSD-derived systems.
649777b52106e52535b18ab234a53974fad0268aEugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<P><HR>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<H3><A NAME="DEC">
2220152f8ed97959c62abfb6625873a725a71013Eugen KuksaDigital UNIX
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa</A></H3>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<UL>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa <LI><A
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa HREF="http://www.digital.com/info/internet/document/ias/tuning.html"
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa >DIGITAL UNIX Tuning Parameters for Web Servers</A>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa <LI>We have some <A HREF="perf-dec.html">newsgroup postings</A> on how
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa to tune Digital UNIX 3.2 and 4.0.
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa</UL>
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa
2220152f8ed97959c62abfb6625873a725a71013Eugen Kuksa<P><HR>
<H3><A NAME="Linux">
Linux
</A></H3>
The most common problem on Linux shows up on heavily-loaded systems
where the whole server will appear to freeze for a couple of minutes
at a time, and then come back to life. This has been traced to a
listen() queue overload - certain Linux implementations have a low
value set for the incoming connection queue which can cause problems.
Please see our <a
href="http://www.qosina.com/~awm/apache/linux-tcp.html">Using Apache on
Linux</a> page for more info on how to fix this.
<P><HR>
<H3><A NAME="SGI">
SGI
</A></H3>
<UL>
<LI><A HREF="http://www.sgi.com/Products/WebFORCE/Resources/res_TuningGuide.html">
WebFORCE Web Server Tuning Guidelines for IRIX 5.3,
&lt;http://www.sgi.com/Products/WebFORCE/Resources/res_TuningGuide.html&gt;</A>
</UL>
<P><HR>
<H3><A NAME="Solaris">
Solaris 2.4
</A></H3>
The Solaris 2.4 TCP implementation has a few inherent limitations that
only became apparent under heavy loads. This has been fixed to some
extent in 2.5 (and completely revamped in 2.6), but for now consult
the following URL for tips on how to expand the capabilities if you
are finding slowdowns and lags are hurting performance.
<UL>
<LI><A href="http://www.sun.com/sun-on-net/Sun.Internet.Solutions/performance/">
World Wide Web Server Performance,
&lt;http://www.sun.com/sun-on-net/Sun.Internet.Solutions/performance/&gt;</a>
<LI><A HREF="http://www.sun.com/solaris/products/siss/">
Solaris Internet Server Supplement for 2.5.1</A>
</UL>
<P><HR>
<H3><A NAME="SunOS">
SunOS 4.x
</A></H3>
More information on tuning SOMAXCONN on SunOS can be found at
<A HREF="http://www.islandnet.com/~mark/somaxconn.html">
http://www.islandnet.com/~mark/somaxconn.html</A>.
<P><HR>
<H3>More welcome!</H3>
If you have tips to contribute, send mail to <a
href="mailto:brian@organic.com">brian@organic.com</a>
<!--#include virtual="footer.html" -->
</body></html>