Re: Performance analysis questions

Andrew Payne (
Wed, 11 May 1994 19:03:29 -0400

>2. Initial indications are that process startup time is the dominant
>factor. This suggests that a benchmark consisting of lots of little
>documents will be most telling; I expect that big documents will be
>bandwidth limited and not dependent on server performance (unless it's
>got a direct T3 interface).

I started hacking some instrumentation into NCSA's httpd to see where it
was spending time (I couldn't find a profiling tool that would work through
the fork(), though in retrospect it probably would have been easier to run
the server in single connection mode and throw out all of the startup
stuff). NOT counting the fork() time, I found the server spending about
20-30% of its time (wall and CPU) in the code that reads the request
headers. Code like this doesn't help (getline() in util.c):

if((ret = read(f,&s[i],1)) <= 0) {

Your mileage may vary.

>Any comments and suggestions are welcome, and I do plan to make the test
>suite available when finished, as well as a result summary. Thanks!

I too am interested in performance, and am interested in whatever you come
up with. I'm also interested in stories from sites that are suffering
scalability problems, if there are any to share.

Andrew Payne
Open Market, Inc.