Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!munnari.OZ.AU!news.Hawaii.Edu!news.uoregon.edu!hunter.premier.net!www.nntp.primenet.com!nntp.primenet.com!news1.best.com!nntp1.best.com!usenet From: dillon@flea.best.net (Matt Dillon) Newsgroups: comp.unix.bsd.freebsd.misc,comp.unix.bsd.bsdi.misc Subject: Re: Tuning BSD as Web Server (was Re: Unix too slow for a Web server?) Date: 9 Nov 1996 03:44:32 GMT Organization: BEST Internet Communications, Inc. Lines: 59 Message-ID: <560un0$d7v@nntp1.best.com> References: <323ED0BD.222CA97F@pobox.com> <527jh9$88p@gol1.gol.com> <32482B53.6935@www.play-hookey.com> <5600s5$l1l@news.rrz.uni-koeln.de> NNTP-Posting-Host: flea.best.net Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:30800 comp.unix.bsd.bsdi.misc:5242 :In article <5600s5$l1l@news.rrz.uni-koeln.de>, :Winfried Truemper <truemper@elfi.MI.Uni-Koeln.DE> wrote: :>Peter Evans wrote: :> :>: I think the best one is probably "retire apache" and use a :>: decent server that doesnt spawn itself left right and silly. :>: I quite like spinner, or roxen, or whatever it is called :>: today. (http://www.roxen.com/ ??) :> :>I tried in on a machine with 600.000 hits/day and it crashed after 2 :>hours. Seems like Roxen*Challenger is currently not able to drive really :>large sites. :>Sad, I liked the flexible and easy configuration of it. :> :> :>Ken Bigelow (kbigelow@www.play-hookey.com) wrote: :> :>: Oh, come now! Yes, if you run Apache in stand-alone mode it will :>: maintain between 5 and 10 (by default -- adjustable) idle httpd servers :>: waiting for access requests. This is for faster response. :> :>Funny that people believe this apache-PR. Most servers run in "forking :>mode" to hide bugs. On large sites the "idle httpd servers" cost you :>additional 32MB of memory without any advantage. :> :>See http://www.probe.net/~mgleason/ncftpd/perf.html :>for a comparism between an old forking ftpd and a non-forking version. :> :>Apache is reliable that's the only advantage of it. :> :> :>-Winfried On a large WWW server machine, the parameters you choose for your WWW server configuration must handle the absolute worst case you believe the machine can take without causing a cascade failure. In practical terms, this means that idle httpd servers do not cost you a thing... if your machine can't handle serving web pages with them present, then you had no business configuring them in the first place! In regards to 'hiding bugs'... it's not so much hiding bugs as it is admiting that there are bugs. Nobody is purposefully breaking the server. The pre-forking and limitd hits per server just happen to kill two birds with one stone, that's all. IMHO the right way to do a web server is to use a combination of multiple processes and multithreading (select() based or otherwise). In the case of multithreading, the server code needs to be much more robust because errors will compound more readily. Apache also has third party module support and no control over bugs that might exist in the third party modules. It is therefore prudent to have a mechanism to deal with said bugs insofar as not taking out the entire server goes. -Matt