in reply to Startup cost, CGI performance

As a matter of fact, as your original question is "how much time does it take for my script to get the image", I'd believe what ab says. Then we have to understand why it takes 3.5 seconds, but as no caching is being done it is the actual time it takes to serve your request (by the way, how many concurrent sessions do you use on ab and how many hits do you make? the number of concurrent sessions can place a good strain on performance).

From your profile, it seems that everything you do is comparatively small after you pay 2.1 seconds of startup time. I'd try mod_perl first, then FastCGI, and then maybe I'd play with YAML. The rest of the code is not worth optimizing at this stage. And use ab to benchmark it all, so you have consistent and actual execution results within the web server.

Replies are listed 'Best First'.
Re: Re: Startup cost, CGI performance
by dd-b (Pilgrim) on Jan 14, 2004 at 17:40 UTC

    I'm running only one concurrent session in the benchmark, because of course if I do more they compete with each other and run up the numbers. The system has 512MB of memory and is lightly loaded; no swapping was going on as the benchmark ran. I believe I ran 50 retrievals; enough to avoid the warning about the sample being too small to be meaningful from ab, anyway.

    I was about to go optimize a section of my code that turns out to have almost zero contribution to the total; another example of why one really does need to profile first!