You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by "Craig R. McClanahan" <Cr...@eng.sun.com> on 2000/11/01 01:09:41 UTC

Tomcat 4.0 Milestone 4

Hey folks,

I'm planning on cutting a fourth milestone of Tomcat 4.0 tomorrow
(Wednesday) evening.  This milestone will reflect all of the changes
that occurred in the servlet 2.3 and JSP 1.2 specifications between
public draft and proposed final draft (and there were a *bunch* of
them), completion of the remaining new 2.3/1.2 functionality, and
several bug fixes.

This will be the last big push of spec-related functionality additions
for Tomcat 4.0.  Now, we can turn our attention more towards bug fixes
and performance tuning.  You can help in that process by downloading and
playing with the Tomcat 4.0 milestone.  I'd like to see us shake it out
enough to be production quality by Christmas time.

Besides bug fixing and tuning, I know of several pieces of functionality
yet to be added that are being worked on, including:

* Web connectors (using a new connector protocol
  called mod_warp that is aware of webapp configuration
  settings, so you will not have to configure things twice).

* JNDI context support (like that used in J2EE servers)
  for the <env-entry> and <resource-ref> configuration
  parameters in the deployment descriptor.

If you are interested in contributing to Tomcat 4.0, there is a "wish
list" document in file "catalina/STATUS.html" in the jakarta-tomcat-4.0
source tree.  Feel free to propose new ideas, or to volunteer to work on
one of these.

Craig McClanahan



Re: Can market-first/measure-later sustain TC growth?

Posted by Jason Brittain <ja...@olliance.com>.
Hi again Roy.

Roy Wilson wrote:
> 
> Jason,
> 
> A matter of small importance, and of philosophy, but ...
> 
> <snip>
> 
> > The great thing about this is that
> > it gets some people jazzed about the project without making any
> > real, solid claims.
> 
> I think I'm ok on this.
> 
> > And, about the sentence that says "performs well under heavy
> > load, even compared to the native Apache web server"..  This
> > works the same way, since we're not saying which web server,
> > nor running on which operating system, nor under what conditions.
> > We're not even saying a major version number.  So why is it in
> > here?  Because, I heard through the grapevine that someone ran
> > some meaningful (but not necessarily bullet-proof) performance
> > tests and had this finding: that the version of Catalina that
> > was tested at the time performed about as well on most tests
> > as the version of their native Apache web server did on the same
> > tests.
> 
> But what if there happens to also be in the gv a story about someone who
> has run some meaningful performance tests and found the contrary? To mix
> metaphors, the can-o-worms that you don't want to open gets opened
> anyway, does it not?

So if someone else wants to dispute this claim, they'll first run
into the fact that we're not making any exact claims in the FAB,
only relative statements.  Then, if they want to try to make some
kind of exact claim that Catalina's web server doesn't perform well
in comparison to some version (that they choose) of the Apache web
server, then they'll first need to run some meaningful benchmarks
and publicly post the results.  Most people know that benchmarks
are often misleading, and are often swayed in favor of whoever runs
the benchmark.  So, that would only cause more talk about how the
benchmark should have been tuned, or which tests really should have
been run, etc..  And, I think that's all good because the result
is that more people are thinking and talking about Catalina.  :)
We learn more about how to tune it, how to test it, etc, all in
comparison to the native Apache web server.

The end result of it all is that it is our word against theirs,
and people will believe what they want to believe and what they
can prove on their own machine.  That's about it.
 
> > I personally don't want to spend time validating that,
> > nor would I want to be the one to try to defend the results
> > (it would likely turn into another "Java's not as fast as C"
> > arguement).
> 
> I agree with this, sort of.
> 
> > But, I believe it's possible, and I also believe
> > that Catalina's web server performs quite nicely.
> 
> I am too am inclined to think that Catalina's webserver will perform well
> enough to satisfy someone somewhere, but aren't you claiming more?

This is one thing I find awkward about marketing-speak: it sure
seems like it makes wild, solid claims, but in reality it doesn't.

> > Everyone should keep in mind that the purpose of our FAB is not
> > to prove any performance numbers or to help engineers to
> > understand Catalina's deep implementation details.  It's to make
> > some not-so-technically-saavy readers want to help the project,
> > promote the project, hire people to get it running and use it,
> > etc.  We were primarily thinking of people like:
> 
> >  - CEOs, CTOs, and other management personnel
> >  - Venture Capitalists
> >  - Marketing staff
> >  - [insert random Joe "Non-Technical" Businessman here]
> 
> I agree with the language used for the target audience, but see below.
> 
> > Reallly, people who don't know much about why their company
> > should be interested in this thing called Catalina who aren't
> > technically saavy enough to understand other docs that they
> > can find about it (like the User docs, or other technical docs
> > like the Classloader explanation doc or even the status doc..)
> > How else can we each get permission to work full-time on cool
> > projects like Catalina?  The better Catalina looks to both the
> > technical and non-technical population at large, the more support
> > the project will get overall, I think.
> 
> I think that the marketing-speak can't be broadcast until there is
> technical data to support it in some fashion. Otherwise, perhaps, some
> CEO/CTO/etc., asks a question that ultimately gets answered by a
> technically savvy person such as yourself who (in the absence of
> technical performance docs) might then be forced to reply "there's no
> !#%?! evidence!"

So then the Boss's next reply would be "Well then benchmark it and
have the results ready by friday.", and that means they'll download
it, install it, figure out some way of benchmarking it, and compare
with Apache.  If they get bad numbers, then they'll probably think
that we know something they don't.  And, we just might.

Also, having no "solid" numbers to back up a claim that's actually
a relative statement won't necessarily mean that we're just plain
wrong.

Besides, I think those who benchmark will find that it performs
quite comparably to the native Apache web server of their choice.
Notice, though, that the FAB makes no mention that currently the
Catalina web server doesn't have a plethora of configuration
features like the native Apache web server has.  Of course the
Catalina web server should have less features at this point, it's
a much younger project.  So, even benchmarking doesn't give you
the full picture.  You have to decide what kind of a web server
you need for any given project.  Performance isn't always everything
(but it sure is nice! :).

> I don't see how a market-first/measure-later approach can sustain growth
> in Tomcat support. But, then, maybe you guys are simply getting the
> market-speak in place :-).

Yes, for us it was mostly a matter of having our ducks in a row.
We wanted to be prepared for non-techies asking us the question
"So what's this Catalina thing you mentioned, and why should I
care?".  That was our real motive for writing this kind of text.

--
Jason Brittain
Software Engineer, Olliance Inc.        http://www.Olliance.com
Current Maintainer, Locomotive Project  http://www.Locomotive.org

Can market-first/measure-later sustain TC growth?

Posted by Roy Wilson <de...@bellatlantic.net>.
Jason,

A matter of small importance, and of philosophy, but ...

<snip>


> The great thing about this is that
> it gets some people jazzed about the project without making any
> real, solid claims.

I think I'm ok on this.

> And, about the sentence that says "performs well under heavy
> load, even compared to the native Apache web server"..  This
> works the same way, since we're not saying which web server,
> nor running on which operating system, nor under what conditions.
> We're not even saying a major version number.  So why is it in
> here?  Because, I heard through the grapevine that someone ran
> some meaningful (but not necessarily bullet-proof) performance
> tests and had this finding: that the version of Catalina that
> was tested at the time performed about as well on most tests
> as the version of their native Apache web server did on the same
> tests.

But what if there happens to also be in the gv a story about someone who 
has run some meaningful performance tests and found the contrary? To mix 
metaphors, the can-o-worms that you don't want to open gets opened 
anyway, does it not?  

> I personally don't want to spend time validating that,
> nor would I want to be the one to try to defend the results
> (it would likely turn into another "Java's not as fast as C"
> arguement).  

I agree with this, sort of.

> But, I believe it's possible, and I also believe
> that Catalina's web server performs quite nicely.

I am too am inclined to think that Catalina's webserver will perform well 
enough to satisfy someone somewhere, but aren't you claiming more?  

> Everyone should keep in mind that the purpose of our FAB is not
> to prove any performance numbers or to help engineers to
> understand Catalina's deep implementation details.  It's to make
> some not-so-technically-saavy readers want to help the project,
> promote the project, hire people to get it running and use it,
> etc.  We were primarily thinking of people like:

>  - CEOs, CTOs, and other management personnel
>  - Venture Capitalists
>  - Marketing staff
>  - [insert random Joe "Non-Technical" Businessman here]

I agree with the language used for the target audience, but see below.

> Reallly, people who don't know much about why their company
> should be interested in this thing called Catalina who aren't
> technically saavy enough to understand other docs that they
> can find about it (like the User docs, or other technical docs
> like the Classloader explanation doc or even the status doc..)
> How else can we each get permission to work full-time on cool
> projects like Catalina?  The better Catalina looks to both the
> technical and non-technical population at large, the more support
> the project will get overall, I think.

I think that the marketing-speak can't be broadcast until there is 
technical data to support it in some fashion. Otherwise, perhaps, some 
CEO/CTO/etc., asks a question that ultimately gets answered by a 
technically savvy person such as yourself who (in the absence of 
technical performance docs) might then be forced to reply "there's no 
!#%?! evidence!" 

I don't see how a market-first/measure-later approach can sustain growth 
in Tomcat support. But, then, maybe you guys are simply getting the 
market-speak in place :-).

Roy

-- 
Roy Wilson
E-mail: designrw@bellatlantic.net

Re: Tomcat 4.0 FAB

Posted by Jason Brittain <ja...@olliance.com>.
Hi Roy.

Roy Wilson wrote:
> 
> Jason,
> 
> I am a geek aspiring to be a Catalina-performance-geek, but I know I
> appreciated your marketing-speak more than I'm supposed to. :-)

:)  We're glad you liked it.

> You mention that the built-in webserver performs well under heavy load. I
> don't doubt it, but would like to know the data source (ApacheCon
> Europe?) and see numbers. In particular, how was the load generated?
> ApacheBench?
> 
> Roy Wilson
> E-mail: designrw@bellatlantic.net

Here's the paragraph from our Features and Benefits doc that you're
referring to:

----snip------snip------

Built-in Multiplatform High Performance Web Server

Along with great servlet container features, Catalina comes with its
own high performance HTTP 1.1 web server built in. This new web server,
written entirely in Java, makes it easy to try Catalina without
having to configure a third-party web server. Users can thus deploy
Catalina as a functionally complete application server solution
(excluding database server) without a serious performance
penalty. The built-in web server performs well under heavy load,
even compared to the native Apache web server. And because Catalina
is written completely in Java, it's fully multiplatform, running
on Linux, Windows, Solaris or any other operating system that supports
the Java 2 Platform.

----snip------snip------

Now, keep in mind that one property of marketing-speak is that
everything is relative, and that phrases that sound like exact
claims are nothing of the kind.  :)  "high performance" is a
relative term, just as "performs well under heavy load" is,
since the text makes no claims about what "high" or "well" or
"heavy" really means.  The reason why I think this kind of text
works so well on some folks is that they make the assumption
that "high" means what they (the reader) thinks it means, and
that the writer is making a claim about that kind of performance.
In reality, this text doesn't mean much, except that it means
to boast about Catalina.  :)  The great thing about this is that
it gets some people jazzed about the project without making any
real, solid claims.

And, about the sentence that says "performs well under heavy
load, even compared to the native Apache web server"..  This
works the same way, since we're not saying which web server,
nor running on which operating system, nor under what conditions.
We're not even saying a major version number.  So why is it in
here?  Because, I heard through the grapevine that someone ran
some meaningful (but not necessarily bullet-proof) performance
tests and had this finding: that the version of Catalina that
was tested at the time performed about as well on most tests
as the version of their native Apache web server did on the same
tests.  I personally don't want to spend time validating that,
nor would I want to be the one to try to defend the results
(it would likely turn into another "Java's not as fast as C"
arguement).  But, I believe it's possible, and I also believe
that Catalina's web server performs quite nicely.

Everyone should keep in mind that the purpose of our FAB is not
to prove any performance numbers or to help engineers to
understand Catalina's deep implementation details.  It's to make
some not-so-technically-saavy readers want to help the project,
promote the project, hire people to get it running and use it,
etc.  We were primarily thinking of people like:

 - CEOs, CTOs, and other management personnel
 - Venture Capitalists
 - Marketing staff
 - [insert random Joe "Non-Technical" Businessman here]

Reallly, people who don't know much about why their company
should be interested in this thing called Catalina who aren't
technically saavy enough to understand other docs that they
can find about it (like the User docs, or other technical docs
like the Classloader explanation doc or even the status doc..)
How else can we each get permission to work full-time on cool
projects like Catalina?  The better Catalina looks to both the
technical and non-technical population at large, the more support
the project will get overall, I think.

--
Jason Brittain                          (415)354-6645
Software Engineer, Olliance Inc.        http://www.Olliance.com
Current Maintainer, Locomotive Project  http://www.Locomotive.org

Re: Tomcat 4.0 FAB

Posted by Roy Wilson <de...@bellatlantic.net>.
Jason,

I am a geek aspiring to be a Catalina-performance-geek, but I know I 
appreciated your marketing-speak more than I'm supposed to. :-) 

You mention that the built-in webserver performs well under heavy load. I 
don't doubt it, but would like to know the data source (ApacheCon 
Europe?) and see numbers. In particular, how was the load generated? 
ApacheBench?

Roy Wilson
E-mail: designrw@bellatlantic.net


Re: Tomcat 4.0 Milestone 4

Posted by Jason Brittain <ja...@olliance.com>.
In case you're interested, we've written a short document about
Catalina's Features And Benefits (FAB) that is more geared for
non-geeks (it's very marketingly-written :) that you may want to
include with the M4 docs.  I've attached it to this mail.  It's a
plain text version, but I'm sure it would look better as HTML.
Let us know if there's anything inaccurate about the details it
contains.  It was written by William Abernathy 
(william@olliance.com) and myself.  Let us know what you think.

And, BTW, great work on making Catalina the first Servlet 2.3
compliant servlet container!

Cheers!

--
Jason Brittain
Software Engineer, Olliance Inc.        http://www.Olliance.com
Current Maintainer, Locomotive Project  http://www.Locomotive.org


"Craig R. McClanahan" wrote:
> 
> Hey folks,
> 
> I'm planning on cutting a fourth milestone of Tomcat 4.0 tomorrow
> (Wednesday) evening.  This milestone will reflect all of the changes
> that occurred in the servlet 2.3 and JSP 1.2 specifications between
> public draft and proposed final draft (and there were a *bunch* of
> them), completion of the remaining new 2.3/1.2 functionality, and
> several bug fixes.
> 
> This will be the last big push of spec-related functionality additions
> for Tomcat 4.0.  Now, we can turn our attention more towards bug fixes
> and performance tuning.  You can help in that process by downloading and
> playing with the Tomcat 4.0 milestone.  I'd like to see us shake it out
> enough to be production quality by Christmas time.
> 
> Besides bug fixing and tuning, I know of several pieces of functionality
> yet to be added that are being worked on, including:
> 
> * Web connectors (using a new connector protocol
>   called mod_warp that is aware of webapp configuration
>   settings, so you will not have to configure things twice).
> 
> * JNDI context support (like that used in J2EE servers)
>   for the <env-entry> and <resource-ref> configuration
>   parameters in the deployment descriptor.
> 
> If you are interested in contributing to Tomcat 4.0, there is a "wish
> list" document in file "catalina/STATUS.html" in the jakarta-tomcat-4.0
> source tree.  Feel free to propose new ideas, or to volunteer to work on
> one of these.
> 
> Craig McClanahan

TC4.0 Linux/Unix measurement scripts

Posted by Roy Wilson <de...@bellatlantic.net>.
Hi,

Per Craig's request, here are the script files I used to develop the 
Apache-based presentation mentioned in an earlier post. 

Assuming I understand the ab source code, the scripts represent a setting 
involving single-request clients (who make a request and wait for a reply 
before making another) generating a homogeneous workload (ie, HelloWorld) 
on the server: I'm working on the single-client heterogeneous case now.

If you have heartburn about these scripts or want to propose something 
better, please do.  

Attached are two simplistic ascii bash shell scripts that work with 
Apache on Redhat6.1. Since I haven't finished installing TC4.0, so I 
don't know first-hand what's required to use ab with servlets: I'm told 
that having an http-address of the following form is sufficient: "
https://localhost:8080/servlet/HTTPGetServlet" 
Also attached is a sample summary file. I'm writing a shell/awk script to 
process the summary files that are posted. 

1) tcdriver

which which invokes tcscript with two parameters: the  number of 
concurrent connections (1, 20, 40, 60, 80, and 100) and one (!) servlet 
of your choice (make it HelloWorld the first time you use the script - 
and then send the summary before using it again with your second most 
favorite servlet).


2) tcscript

which invokes ab using the two parameters from tcdriver, dumps filtered 
data to a summary file, and cleans up the intermediate files. You will 
need to modify the line that invokes ab to give your localhost pathname. 
By running ab in localhost mode, network variability is eliminated (even 
though TCPIP loopback processing isn't). 

The data collected includes:

(from ab) info on per request connection times, total test, time and 
throughput;

(from sar) cpu utilization (%) and disk activity;

(from sa) cpu minutes per process.

I ran each iteration of the script after a cold boot, but I think running 
the whole thing immediately after a cold boot is sufficient.

Assuming Linux/Unix people decide to use these scripts, please attach the 
summary file in ascii format to a post that describes your system 
configuration (CPU, disk, memory, OS, etc.) I will process that files 
post the results every TBD days.

Sorry about the length. If I knew how to make it shorter, I would. :-)

Roy
-- 
Roy Wilson
E-mail: designrw@bellatlantic.net 

>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 11/2/00, 1:32:20 PM, "Craig R. McClanahan" 
<Cr...@eng.sun.com> wrote regarding Re: Tomcat 4.0 Milestone 4 
performance measurement:

> Roy, would it be possible for you to write us a simple "cookbook" to 
follow
> in executing tests, so that we can each follow the same script and then
> report the results consistently?

> Craig McClanahan


> Roy Wilson wrote:

> > Hi,
> >
> > (1) System throughput and response time data collection
> >
> > I plan to do measurements myself using Henri Gomez' rpmized version of
> > TC-4.0-m4, but since machines and environments differ, it might be
> > interesting to know what kind of total time, throughput, avg and max
> > connection and processing time per request people see using the
> > HelloWorld servlet driving their system with ab in localhost mode
> > (immediately after a cold boot). These are the kinds of data presented by
> > Costin at ApacheCon Europe. I'd like to compile such numbers if people
> > are willing to post them along with info on CPU (e.g. Celeron 400Mhz),
> > memory (eg. 256M SDRAM100), disk (eg. WD Caviar 10.2MB, 5400 rpms), OS
> > (Redhat6.1), JVM (Classic), etc.
> >
> > (2) System resource usage data collection
> >
> > CPU and disk demand per request on each system might be interesting. I
> > have done some very simple resource measurement and performance modeling
> > of Apache that is described in a Office2000 PowerPoint (but created in
> > StarImpress) presentation at
> >
> > http://members.bellatlantic.net/~designrw/BENCH1.zip
> >
> > My current plan is to apply the same approach to TC-4.0 and then to
> > extend it by considering a mix of servlets, not just the HelloWorld
> > servlet (again in keeping with Costin's pitch at ApacheCon).
> >
> > Roy Wilson
> > --
> > Roy Wilson
> > E-mail: designrw@bellatlantic.net
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org


> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org

Performance measurement scripting

Posted by Roy Wilson <de...@bellatlantic.net>.
Craig,

I have a bash shell script that (currently) drives Apache, sar, and sa on 
a RedHat6.1 system. I will doctor it a bit and post it tonight to see if 
there are suggestions about what to include, modify, leave out, so that 
it will span most Unix/Linux systems.

Roy
-- 
Roy Wilson
E-mail: designrw@bellatlantic.net

>>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 11/2/00, 1:32:20 PM, "Craig R. McClanahan" 
<Cr...@eng.sun.com> wrote regarding Re: Tomcat 4.0 Milestone 4 
performance measurement:


> I agree that it's definitely time to start doing this.  However, to have
> useful results, it is important that we execute the same test procedures 
--
> otherwise, you cannot even reproduce the same results reliably on the 
same
> platform.

> Roy, would it be possible for you to write us a simple "cookbook" to 
follow
> in executing tests, so that we can each follow the same script and then
> report the results consistently?

> Craig McClanahan


> Roy Wilson wrote:

> > Hi,
> >
> > (1) System throughput and response time data collection
> >
> > I plan to do measurements myself using Henri Gomez' rpmized version of
> > TC-4.0-m4, but since machines and environments differ, it might be
> > interesting to know what kind of total time, throughput, avg and max
> > connection and processing time per request people see using the
> > HelloWorld servlet driving their system with ab in localhost mode
> > (immediately after a cold boot). These are the kinds of data presented by
> > Costin at ApacheCon Europe. I'd like to compile such numbers if people
> > are willing to post them along with info on CPU (e.g. Celeron 400Mhz),
> > memory (eg. 256M SDRAM100), disk (eg. WD Caviar 10.2MB, 5400 rpms), OS
> > (Redhat6.1), JVM (Classic), etc.
> >
> > (2) System resource usage data collection
> >
> > CPU and disk demand per request on each system might be interesting. I
> > have done some very simple resource measurement and performance modeling
> > of Apache that is described in a Office2000 PowerPoint (but created in
> > StarImpress) presentation at
> >
> > http://members.bellatlantic.net/~designrw/BENCH1.zip
> >
> > My current plan is to apply the same approach to TC-4.0 and then to
> > extend it by considering a mix of servlets, not just the HelloWorld
> > servlet (again in keeping with Costin's pitch at ApacheCon).
> >
> > Roy Wilson
> > --
> > Roy Wilson
> > E-mail: designrw@bellatlantic.net
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org


> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org

Re: Tomcat 4.0 Milestone 4 performance measurement

Posted by "Craig R. McClanahan" <Cr...@eng.sun.com>.
I agree that it's definitely time to start doing this.  However, to have
useful results, it is important that we execute the same test procedures --
otherwise, you cannot even reproduce the same results reliably on the same
platform.

Roy, would it be possible for you to write us a simple "cookbook" to follow
in executing tests, so that we can each follow the same script and then
report the results consistently?

Craig McClanahan


Roy Wilson wrote:

> Hi,
>
> (1) System throughput and response time data collection
>
> I plan to do measurements myself using Henri Gomez' rpmized version of
> TC-4.0-m4, but since machines and environments differ, it might be
> interesting to know what kind of total time, throughput, avg and max
> connection and processing time per request people see using the
> HelloWorld servlet driving their system with ab in localhost mode
> (immediately after a cold boot). These are the kinds of data presented by
> Costin at ApacheCon Europe. I'd like to compile such numbers if people
> are willing to post them along with info on CPU (e.g. Celeron 400Mhz),
> memory (eg. 256M SDRAM100), disk (eg. WD Caviar 10.2MB, 5400 rpms), OS
> (Redhat6.1), JVM (Classic), etc.
>
> (2) System resource usage data collection
>
> CPU and disk demand per request on each system might be interesting. I
> have done some very simple resource measurement and performance modeling
> of Apache that is described in a Office2000 PowerPoint (but created in
> StarImpress) presentation at
>
> http://members.bellatlantic.net/~designrw/BENCH1.zip
>
> My current plan is to apply the same approach to TC-4.0 and then to
> extend it by considering a mix of servlets, not just the HelloWorld
> servlet (again in keeping with Costin's pitch at ApacheCon).
>
> Roy Wilson
> --
> Roy Wilson
> E-mail: designrw@bellatlantic.net
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org


Re: Tomcat 4.0 Milestone 4 performance measurement

Posted by Roy Wilson <de...@bellatlantic.net>.
Hi,

(1) System throughput and response time data collection

I plan to do measurements myself using Henri Gomez' rpmized version of 
TC-4.0-m4, but since machines and environments differ, it might be 
interesting to know what kind of total time, throughput, avg and max 
connection and processing time per request people see using the 
HelloWorld servlet driving their system with ab in localhost mode 
(immediately after a cold boot). These are the kinds of data presented by 
Costin at ApacheCon Europe. I'd like to compile such numbers if people 
are willing to post them along with info on CPU (e.g. Celeron 400Mhz), 
memory (eg. 256M SDRAM100), disk (eg. WD Caviar 10.2MB, 5400 rpms), OS 
(Redhat6.1), JVM (Classic), etc. 

(2) System resource usage data collection

CPU and disk demand per request on each system might be interesting. I 
have done some very simple resource measurement and performance modeling 
of Apache that is described in a Office2000 PowerPoint (but created in 
StarImpress) presentation at 

http://members.bellatlantic.net/~designrw/BENCH1.zip

My current plan is to apply the same approach to TC-4.0 and then to 
extend it by considering a mix of servlets, not just the HelloWorld 
servlet (again in keeping with Costin's pitch at ApacheCon).

Roy Wilson
-- 
Roy Wilson
E-mail: designrw@bellatlantic.net

Tomcat 4.0 Milestone 4 and performance issues

Posted by Roy Wilson <de...@bellatlantic.net>.
Hi,

Has anyone used ab to stress test any versions of Tomcat when used as an 
in-process servlet container (Costin, Craig, Pier)? (I am a newbie at 
both Apache and Tomcat: I assume that using Tomcat and Apache together 
implies that Tomcat is used in an in-process mode.) If so, do you 
anticipate any procedural changes needed to do the same with Tomcat-4.0? 
I ask because I'd like to do some measurements of thruput and resource 
demand once the connector is available and am wondering whether I'll need 
to do more than install Tomcat, get it running, and fire up ab. I know 
the definitive answer that won't be known until the connector is up and 
working.
 
Per an early suggestion from Costin or Craig, I've been doing some 
simplistic static HTML page ApacheBench based measurements (of Apache 
only) in localhost mode (yeah, I know ...) representing an Intranet usage 
scenario. In short, I use ab to drive Apache while running sar and sa in 
the background. From sar and sa, I derive per request CPU and disk 
service time estimates for ab and httpd. These values are used as inputs 
to a (too simple) queueing model. The model generates average queue 
lengths, resource utilizations and average system response time for large 
populations of users. For the intranet case, it also allows me to look at 
the impact of a non-zero think time: ab assumes (in effect) a population 
of C continuously active users. The model also makes possible a SWAG 
(scientific wild-ass-guess) about performance and capacity across 
processors (using CPUmark99 or some such numbers) and processor 
configurations. This is rude and crude, I admit, but sometimes good for 
comparing systems. And the model runs in a matter of seconds, so 
sensitivity analysis is almost free. 

If there's any interest, I can post a link to a PowerPoint presentation 
that summarizes what I've done so far (and let the barbecue begin :-)).

-- 
Roy Wilson
E-mail: designrw@bellatlantic.net



>>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 10/31/00, 7:09:41 PM, "Craig R. McClanahan" 
<Cr...@eng.sun.com> wrote regarding Tomcat 4.0 Milestone 4:


> Hey folks,

> I'm planning on cutting a fourth milestone of Tomcat 4.0 tomorrow
> (Wednesday) evening.  This milestone will reflect all of the changes
> that occurred in the servlet 2.3 and JSP 1.2 specifications between
> public draft and proposed final draft (and there were a *bunch* of
> them), completion of the remaining new 2.3/1.2 functionality, and
> several bug fixes.

> This will be the last big push of spec-related functionality additions
> for Tomcat 4.0.  Now, we can turn our attention more towards bug fixes
> and performance tuning.  You can help in that process by downloading and
> playing with the Tomcat 4.0 milestone.  I'd like to see us shake it out
> enough to be production quality by Christmas time.

> Besides bug fixing and tuning, I know of several pieces of functionality
> yet to be added that are being worked on, including:

> * Web connectors (using a new connector protocol
>   called mod_warp that is aware of webapp configuration
>   settings, so you will not have to configure things twice).

> * JNDI context support (like that used in J2EE servers)
>   for the <env-entry> and <resource-ref> configuration
>   parameters in the deployment descriptor.

> If you are interested in contributing to Tomcat 4.0, there is a "wish
> list" document in file "catalina/STATUS.html" in the jakarta-tomcat-4.0
> source tree.  Feel free to propose new ideas, or to volunteer to work on
> one of these.

> Craig McClanahan



> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org