Oleg,

Thanks for doing the research!

If my math is correct, this means:
2.0b2 - average of 10.23ms per request
2.0rc1 without isStale - average of 8.16ms per request

This would seem to correlate exactly with the code - we know that the penalty of calling isStale() should be approximately one millisecond, since isStale() calls setSoTimeout(1), since it cannot set it to zero. Oddly, this doesn't correspond to the 100ms vs 300ms discrepancy reported in the original post of this thread. I wonder if you're correct about the logging overhead problem.

Maybe it is just me, but I can live with a 1ms penalty that dramatically increases the reliability of the re-used connections. Based on your research, I think we should keep the isStale() check. What do others think?

You might consider committing your performance test as something under the "contrib" package so that we could look at running it with each release, and thus keep track of the library's performance over time.

-Eric.

Kalnichevski, Oleg wrote:

OK. I did a stupid thing that flawed all my measurements. I have basically ended up measuring the speed of console output ;-). Dumb Russian I am.

Todd, are you sure you have not fallen into the same trap? BETA2 is simply more verbose than ALPHA3 ;-)

There are the revised numbers (with wire log disabled, 10 threads, 50 requests per thread)

2.0a3:                                                  500 requests in 0.225 min
2.0b2:                                                  500 requests in 0.086 min
2.0rc1 (with 'stale' connection check removed): 500 requests in 0.068 min

This is closer to what I expected to see. I have always suspected that the request buffering should have made beta-versions is fact faster, not slower compared to alpha ones. 'isStale' connection check does slow things down a bit.

Is anyone getting different results?

Oleg

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








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



Reply via email to