-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

John,

On 12/9/2010 5:15 PM, John Goodleaf wrote:
> I agree [about benchmarking] and wish I had the time and resources to
> do it. I need to deploy on very short timelines. There actually was a
> performance testing phase budgeted, but it got killed after the
> "business owner" dragged her feet on requirements early in the
> project. Not that I'm bitter or anything...

So... there was a benchmarking stage planned, but it's been bagged in
favor of a consultant who simply tells you how to improve performance
without any way to verify that the "improvements" are accomplishing
anything?

> The application in question is pretty damned fat. It's typical corporate
> bloatware (it's an interface to Documentum). However, there are few
> operations that are noticeably more memory intensive than others. Many parts
> of the app actually rely on pushing an applet to the client. There are
> several of these applets, each relatively small, and they account for about
> 1 in 25 transactions based on my admittedly sketchy profiling. (User
> operation profiling; I have not profiled the code.)

Pushing an applet to a client should be roughly equivalent to the client
downloading static content. Are you saying that those transactions are
minimal (/only/ 1 in 25) or quite frequent?

> There is a pool as you describe, and it will be a big, deep pool. The other
> edge probably applies though.

How many simultaneous requests do you expect to service at any one
point? The connection pool only needs to be (roughly) that big. Also,
you can't possibly use more db connections than the (sum of) maxActive
setting(s) on your Connector(s) in a single Tomcat instance. How big are
we talking?

The good part about synchronization on something like a db connection
pool is that only the borrow/return operations are synchronized... the
duration of the borrow is not relevant to performance -- except that
obviously connection unavailability for other requests might be an
issue. If you have a big enough pool, though, then you shouldn't be
worried about that.

> The app is fairly stable. However, it requires IE 6 or 7 (don't blame me)
> and insofar as I've seen stability problems, it has more to do with IE. In
> other words, on the vast majority of hangs/freezes/whathaveyou, the server
> logs show no problem at all. The catch is on the IE side. In any case, I
> don't anticipate crashing JVMs.

So, your clients crash but the server hums along? I guess if MSIE is the
client platform, that's the best you can do :)

(To be fair, MSIE 9 looks great... finally. It only took Microsoft 4
versions to get MSIE to be good again.)

> I'll see what I can get him to cough up. My suspicion is that he's
> repeating a formula arrived at long, long ago by a guy who doesn't work
> there any longer. I have not observed him to possess any special skills in
> the Apache/Tomcat arenas.

If he tells you to change all your StringBuffers to StringBuilders then
you know he's just wasting your time ;)

> Thanks for your well written and thoughtful response. Can I hire you as a
> consultant?

If you're serious, contact me off-list if you need anything specific.
I'm willing to give general advice for free on the list. ;)

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk0BkM8ACgkQ9CaO5/Lv0PDTSwCfe071+s3ijKMckFo+2qQXUYOL
7IoAn2aZ/48ujp42XbJ98UmIr1ZlssO3
=7dyR
-----END PGP SIGNATURE-----

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

Reply via email to