Thanks for the quick reply Mark. 
Yes I saw your comments in one of your presentations about profilier and I am a 
fan of visualvm and have profiled Tomcat in the past but when down to 1-2msec 
not sure how much the profilier can pick up. I did notice that as the hotspot 
engine "warms up" the response times start to see improvement. I did adjust the 
-Xss256k from the default of 1M and I am looking forward to when I get home to 
see the results since the response times quickly went to 3msec after that was 
set and hope to see 1msec or below after running for 1 day if that change 
really helps. I did start out profiling the SQL and that helped and switching 
to the jtds jdbc driver which seem to help even more and of course eliminating 
the interprocess communication (Tomcat - JBoss). I made sure my data types in 
SQL server were unicode so the jdbc drive did not do extra conversion work to 
unicode. I am slowly moving to the front (JAX-WS to JAX-RS) and then a deep 
dive into OS tuning. After that
 I will stop tuning for another 6 months I guess.
 
Best Regards,
-Tony

--- On Fri, 7/20/12, Mark Thomas <ma...@apache.org> wrote:


From: Mark Thomas <ma...@apache.org>
Subject: Re: Location of Tomcat 7 jvm defualt settings...
To: "Tomcat Users List" <users@tomcat.apache.org>
Date: Friday, July 20, 2012, 2:53 PM


On 20/07/2012 21:42, Tony Anecito wrote:
> Thanks Charles I have found documention for all the below from the
> Tomcat group but seemed somewhat outdated. Mark Thomas's name seemed
> dominant in most of the presentations I have seen there is even
> sections dealing with Tomcat in various Tomcat books I have seen.
> 
> True the tuning is dependent somewhat upon the app but even Mark
> mentioned logging levels, threads that run contineously that might
> best be tuned off (like checking for new deploys ect). He also
> mentioned the xmx xms java tuning and what Tomcat without apps (WARs)
> loaded needs although not sure if he mentioned xss parimeters. I am
> using the G1 GC by default since that is setup in 1.7.0_05 and the
> compressed pointers is also setup by default for that version of
> 1.7.0_05. I am also looking at the OS level to remove uneeded
> services. I alreadt tuned the network transport parameters as best as
> possible.
> 
> FYI I currently am down to the 1-2msec response times as measured at
> the exposed web services methods inside of Tomcat 7 using 64-bit
> Oracle 1.7.0_05 JDK and that includes database calls to SQL Server
> 2012 Express. I have used some of the standard things mentioned by
> Mark Thomas which has helped alot and looking for more current tips.

I'm pretty sure that I will have said somewhere in each of those
presentations words to the effect of "Don't guess where the bottlenecks
are. Get yourself a profiler, profile your application and find out
where they really are."

If the profiler highlights any Tomcat internal code, let us know and
we'll take a look.

I'll also add something that I picked up at JavaOne a few years ago.
Pick any two of "high throughput, small heap, low GC pause times".
Whichever two you pick, the other one will suffer. In an ideal world,
the GC needs plenty of manoeuvring room and you should aim to provide
roughly 5 times the minimum memory your app needs (minimum being defined
as the lowest heap usage you can force with lots of manual GC).

HTH,

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to