• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Deployed app performance degrades over time
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Deployed app performance degrades over time


  • Subject: Re: Deployed app performance degrades over time
  • From: William Hatch <email@hidden>
  • Date: Sat, 27 Sep 2008 21:54:18 -0400


On Sep 27, 2008, at 8:37 PM, Guido Neitzer wrote:

On 27-Sep-08, at 4:46 PM, William Hatch wrote:

I'm curious if we're looking in the right places and am looking for feedback as to how best monitor, diagnose and manage performance for an app in this kind of context where you don't have any requests or responses being generated. TIA

Some wild guesses and what we do to find performance issues:

We have logging with timestamps and SQL query duration logging and also do quite some log output on these "daemon" processes.


I guess that will help finding the spots where you can than dig deeper. Also you could check your disk io, VM usage.

We've looked extensively at the db logs; no slow queries are being triggered, in fact, the total queries per second drops to almost nothing when the app is running slowly. The sql that it generates is largely under our control as we're doing almost everything with raw rows statements, including updates and inserts. We do still use ec.saveChanges at certain points, but timing those out indicates fast solid performance. The host looks good as far as VM usage; haven't looked at disk io.


About Tomcat: I have no idea whether there is something where you can get statistics from a deployed app on Tomcat.

I'm about to do some tests using the jmx stuff, but I"m not sure that's going to work within tomcat. Overall, tomcat memory stats look good via tomcat manager, but I'm not entirely sure how memory is allocated amongst various running apps deployed under the same instance. We'll see hopefully.


Another idea: how is the db behaving when the application gets slow? What do the statistics there say? What if you connect to the db at that time and execute similar queries? Any degradation there? Have you tried closing and re-opening the database channel programmatically?

No problems with other apps or direct sql queries during these slow downs. The db isn't being stressed at all; we've determined a safe sustained max rate of 8k qps on the db, and it's not even close to that when the app is running well. It is on an extremely fast disk system, host with 16GB of memory and pretty much the entire db is loaded into memory at all times. We don't see any locks, etc or stalled operations in the logs; nothing. I haven't tried closing and reopening, other than bringing the app up and down, of course. Do you think that would provide some benefit? I suppose I could do it on each batch iteration.


cug


-- Real World WebObjects Bootcamp at the Big Nerd Ranch: http://www.bignerdranch.com/classes/real-world_webobjects.shtml


_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • Re: Deployed app performance degrades over time
      • From: Guido Neitzer <email@hidden>
References: 
 >Deployed app performance degrades over time (From: William Hatch <email@hidden>)
 >Re: Deployed app performance degrades over time (From: Guido Neitzer <email@hidden>)

  • Prev by Date: Re: Deployed app performance degrades over time
  • Next by Date: Re: Deployed app performance degrades over time
  • Previous by thread: Re: Deployed app performance degrades over time
  • Next by thread: Re: Deployed app performance degrades over time
  • Index(es):
    • Date
    • Thread