You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Jon Stevens <jo...@latchkey.com> on 2001/06/07 03:44:51 UTC
[T4] Three things
#1. I have been able to compile Tomcat 4 for the FIRST time in about 6
months without a lot of painful work. Woo hoo!
#2. The latest cvs version fixes about 99% of the speed issues that once
existed. Things are MUCH MUCH MUCH faster than before.
I say 99% because there still seems to be a small slowness during
startup...it looks something like this (from the turbine.log file)...
[Wed Jun 06 18:36:26 PDT 2001] -- INFO -- Finish Initializing service
(late): UploadService
[Wed Jun 06 18:36:32 PDT 2001] -- INFO -- Start Initializing service (late):
MapBrokerService
Before the fix, there would be several of these largish delays and they
would take between 9-10 seconds each, now I'm only seeing this one largish
delay...
#3. I still haven't gotten a chance to test all the classloader stuff. I
will report back when I have tested it.
Thanks!
-jon
--
"Open source is not available to commercial companies."
-Steve Balmer, CEO Microsoft
<http://www.suntimes.com/output/tech/cst-fin-micro01.html>
Re: [T4] Three things
Posted by Jon Stevens <jo...@latchkey.com>.
on 6/7/01 8:35 AM, "Remy Maucherat" <re...@betaversion.org> wrote:
> Champagne !
> The new build.properties based build is much easier :)
Yes. Much much much easier. However, it still has dependencies on a
bazillion things which is a pain to setup, but I can manage that. :-)
> I don't really know what you're doing there (but I think I'll look at the
> source
> code ;))
What is happening in that log message is that a "Service" (which is a class
that is loaded through Class.forName() and then held onto and made into a
singleton) is instantiated and its init() methods are called.
The log message that I showed is one Service reporting that it is finished,
a delay of about 6 seconds and then another Service starting up. Services
that report (late) startup are Services which are only instantiated when
they are requested from the ServiceBroker instead of being instantiated
right away (ie: different forms of init()).
Now, the nearly impossible thing to debug (without stepping through a LOT of
code) is what is happening between the time that the one (late) Service
reports as being finished and the next one starts. It could be code in
Scarab or Turbine or Tomcat that is being executed and could be causing the
problem.
However, before the speed fix, there was about 3-4 places where there were
~10 second delays and this was repeatable. Now, after the speed fix, there
is only one ~6 second delay.
It is pretty clear to me that the original delays were somewhere in Tomcat
and not in Turbine or Scarab. Figuring out where this one last delay is is
going to be a real pain in the ass.
My guess is that because the other delays were in Tomcat, this last one is
still in Tomcat somewhere and hence my bringing it up.
> If you're loading tons of classes or something like that, static resource
> access
> (at least the initial access) can be a bit slow right now. If you look at the
> implementation, it's because of a largely innefficient reuse of the attributes
> base classes from the JNDI base package. That can be fixed easily, and would
> get
> the performance back to about the same as the direct FS access.
The faster the better. I don't think we are loading a ton of classes though.
Not more than about a hundred at startup...
-jon
Re: [T4] Three things
Posted by Remy Maucherat <re...@betaversion.org>.
Quoting Jon Stevens <jo...@latchkey.com>:
> #1. I have been able to compile Tomcat 4 for the FIRST time in about 6
> months without a lot of painful work. Woo hoo!
Champagne !
The new build.properties based build is much easier :)
> #2. The latest cvs version fixes about 99% of the speed issues that
> once
> existed. Things are MUCH MUCH MUCH faster than before.
>
> I say 99% because there still seems to be a small slowness during
> startup...it looks something like this (from the turbine.log file)...
>
> [Wed Jun 06 18:36:26 PDT 2001] -- INFO -- Finish Initializing service
> (late): UploadService
> [Wed Jun 06 18:36:32 PDT 2001] -- INFO -- Start Initializing service
> (late):
> MapBrokerService
>
> Before the fix, there would be several of these largish delays and they
> would take between 9-10 seconds each, now I'm only seeing this one
> largish
> delay...
I don't really know what you're doing there (but I think I'll look at the source
code ;))
If you're loading tons of classes or something like that, static resource access
(at least the initial access) can be a bit slow right now. If you look at the
implementation, it's because of a largely innefficient reuse of the attributes
base classes from the JNDI base package. That can be fixed easily, and would get
the performance back to about the same as the direct FS access.
> #3. I still haven't gotten a chance to test all the classloader stuff.
> I
> will report back when I have tested it.
Ok.
Remy (still @J1)
Re: [T4] Three things
Posted by Punky Tse <pu...@yahoo.com>.
>
> You should just be able to override "tomcat.build" and
> "tomcat.dist" properties in your local build.properties file. One of the
> advantages of the build.properties approach is that you can override *any*
> property definition in Ant, not just the ones that were passed from the
> build.sh or build.bat scripts.
>
> Craig
>
Craig,
Thanks. It works for me now.
Punky
Re: [T4] Three things
Posted by "Craig R. McClanahan" <cr...@apache.org>.
On Fri, 8 Jun 2001, Punky Tse wrote:
>
> > #1. I have been able to compile Tomcat 4 for the FIRST time in about 6
> > months without a lot of painful work. Woo hoo!
> >
> Agree. I have the same experience before. But a few days ago I tried
> again, I did it. How amazing. Thanks a lot, guys.
>
> Now my only complain for building TC4 from cvs is that I cannot find out how
> to make build/ and dist/ directories to some places other than under
> jakarta-tomcat-4.0. Could any body help me out?
>
> Regards,
> Punky
>
>
>
You should just be able to override "tomcat.build" and
"tomcat.dist" properties in your local build.properties file. One of the
advantages of the build.properties approach is that you can override *any*
property definition in Ant, not just the ones that were passed from the
build.sh or build.bat scripts.
Craig
Re: [T4] Three things
Posted by Punky Tse <pu...@yahoo.com>.
> #1. I have been able to compile Tomcat 4 for the FIRST time in about 6
> months without a lot of painful work. Woo hoo!
>
Agree. I have the same experience before. But a few days ago I tried
again, I did it. How amazing. Thanks a lot, guys.
Now my only complain for building TC4 from cvs is that I cannot find out how
to make build/ and dist/ directories to some places other than under
jakarta-tomcat-4.0. Could any body help me out?
Regards,
Punky