On Mon, 24 Jun 2002, Christopher K.  St.  John wrote:

> > And I can assure you that everyone
> > working on performance seriously is running those test
> > and evaluating the performance periodically.
> > 
> 
>  Nah, I'm not going to take your word for it. Taking your
> assurance on performance would be unprofessional. That
> doesn't mean I think you're dumb, it means I don't trust
> anybody's word on performance without more information.

:-)

What you don't believe ? That I actually do test performance
periodically ? That my tests shows that the factors that matter
for me are improving ? 
 
>  But how about this: I'll show you mine if you show me
> yours. Post the workload you've used to measure the
> performance improvement, and I'll post the one I used for
> testing static file serving performance. Actual results
> can wait, I just want to see the benchmark.

I'm not using tomcat for static files, so I don't test/care
too much about it. 

What I test most of the time is:
- overhead of a servlet ( HelloW - 2 test cases, one with writer one
with stream )
- overhead of a jsp 
- startup time ( I like a small number here )

I test with the http1.0 impl. in 3.3 as a reference, sometimes
as php/mod_perl equivalent, a static page with the same content
served by apache2.0. And of course mod_jk in various combinations
( allwasy socket channel, sometimes the unix channel and jni ).

>  If you're really using ab against HelloWorldServlet, then
> just say it that way, one sentence, no need to get all
> formal.

I don't - HelloWorldSerlvet is calling some resource boundle code,
and that's extra overhead.

I use the HelloW servlet ( which only output, nothing else), 
a jsp with the same content and a servlet that uses stream for 
output. That's for testing container overhead.

I use ab most of the time, but sometimes JMeter ( for the nice
graphs - and better showing peaks ).


>  - http_load used to retrieve a very small http file. This
>  isn't necessarily a servlet test. In Tomcat's case it
>  ends up testing things like:
> 
>    - How fast the defaultservlet runs. This is
>    uninteresting to many people, but very important to
>    others.
> 
>    - How fast the http/ajp13 connector code runs.
> 
>    - The speed of the network stack on your test
>      computers.
> 
>  - I call the results bogo-rps (request per second),
>  because it's a totally bogus way to measure system
>  performance. (But it's useful for doing specific kinds
>  of tuning)
> 
>  - results and details of test setup are a separate issue,
>  I need to re-run against Coyote in any case. But at
>  least:
> 
>   - test with and without an Apache front-end
> 
>     - Apache serving static files (not a tomcat test at
>       all, but a baseline)
>     - Apache mapping static file serving to tomcat
>     - Tomcat standalone
>  
>   - No other workload on Tomcat. Restart for
>     every run. (but include "warmup" so hotspot
>     stabilizes)
> 
>   - Test run on at least two machines (loopback interface
>     skews results)

That's a perfectly valid test case. Not the perfect one
( as I don't think such a thing exists ). 

Are you saying that with this test scenario you can't see
any improvements between 3.2 and 3.3 or between 4.0 and 4.1 ? 

>  I was responding to Remy's -1. Restating the obvious isn't
> a personal slam, it's a way to reveal hidden assumptions
> and find the roots of a technical disagreement.

Remy's -1 refered to the scope ( i.e. he believes a performance test  
should be in commons ).

I agree with your position - that it should be included in the tomcat5
test suite, if someone is willing to do the work ( i.e. you :-). 

Running the tests is very time consuming, and publishing results 
or creating a formal framework is even more work - I prefer
to stick with my own private tests.


>  It also helps non-specialists to follow the lines of reasoning (there
> are 1000's of other people on this list, and I wasn't just talkig to
> Remy). It's an entirely reasonable thing to do, and I'm certainly not
> going to stop. It is very definitely not meant to imply that you,
> Costin, personally don't know this stuff, and I will try to be more
> clear about that in future posts.

The 5.0 proposal is intended for tomcat commiters who are actively working
on the code. I think we can safely assume that most of us know the
basics, and we do our homeworks. 

And the goal is to get an agreement on the next tomcat - and create 
a plan that is acceptable to all. I don't think putting numbers
on the performance goal is helping in any way - what's important 
is agreeing that we want more than we have, and this is a goal
for 5.0.

Implementation details can be discussed separately.

Costin




--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to