The first time you access a context under Tomcat is when it loads it,
basically it lazy load web contexts so that the unaccessed ones are
cluttering up memory.  You can add a command to the servlet context in
web.xml to cause it to load with the server (I just don't know the exact
name).

----- Original Message -----
From: "Manuel Reyes" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, April 30, 2002 8:29 AM
Subject: Tomcat / Axis Performance Issues


> I am running Jakarta Tomcat 4.0.2 (as WinNT service) with XML-AXIS Beta 1
> RC2 on Windows 2000, this is running solo, i.e. not integrated into a
> webserver (i.e. appache/iis etc) as it isnt required for the project.
>
> The process that I use Tomcat/Axis for is made up of the following
> components :
>
> 1) Java class client (jamax.class)
> 2) Java class server JWS (full deployment not needed) (EMISSoap.jws)
> 3) Server DLL file (EMISSoap.dll)
> 4) Backend Database (MUMPS)
>
> The application works in the following fashion :
>
> 1) The user runs the client and sends :
> a)Database connect
> b)Database query(s)
> c)Database disconnect
> 2) The JWS picks these up, loads the DLL, and passes them onto it.
> 3) The DLL connects to the database, pulls out the necessary information.
> 4) Everything is then put into reverse and the client eventually gets the
> output of the query displayed to screen
>
> All works well, but heres the thing, in a test on 5 consequetive queries
> (i.e. 1 connect, 5 queries, 1 disconnect) (each query returning around
40kb)
> the timings return around 5500ms average, which is acceptable.  When I
> restart the Tomcat service this timing increases to an average of 33000ms
> which is unacceptable in a production environment [customers ;-)] if I
then
> rerun the test query this drops back down to 5500ms, so only the first
query
> after a restart is effected.
>
> I ran some test timings on DLL loading, and on every occasion (restarted
or
> not) this process takes around 10ms which is AFAIAC ok.  After some
fiddling
> it would seem the delay is when tomcat wakes up for the first time, i.e.
> when the client makes the first call after the restart and before the dll
> load process is started. Below is my table of timings :
>
> Restart : Total Time : 24795ms
> Re-run : Total Time : 5357ms
> Re-run : Total Time : 5478ms
> Re-run : Total Time : 5187ms
> Re-run : Total Time : 5448ms
>
> Restart : Total Time : 32537ms
> Re-run : Total Time : 5428ms
> Re-run : Total Time : 5478ms
> Re-run : Total Time : 5348ms
> Re-run : Total Time : 5488ms
>
> Restart : Total Time : 33769ms
> Re-run : Total Time : 5438ms
> Re-run : Total Time : 5899ms
> Re-run : Total Time : 5297ms
> Re-run : Total Time : 5428ms
>
> Restart  : Total Time : 33398ms
> Re-run : Total Time : 6109ms
> Re-run : Total Time : 5558ms
> Re-run : Total Time : 5327ms
> Re-run : Total Time : 5378ms
>
> Client Process : Start Timer - Get Params - Send DB Connect - Send Param -
> Display response - Send DB Disconnect - End Timer
>
> After reading - http://www.jguru.com/faq/view.jsp?EID=588390 - I made some
> tweaks to the server.xml file but this made no discernable difference.
>
> So does anybody have any idea as to the cause/cure for this problem
>
> Thanks in advance

Reply via email to