Let's say that I have one app that have开发者_StackOverflow 1000 concurrent users.
What's the best way to measure the Tomcat perfomance? How can I determinate the max number of database connections (pool)?
How can I track down memory leak, cpu leak?
Let's say that I have one app that have 1000 concurrent users.
1000 concurrently handled connections? 1000 HTTP sessions? 1000 hits/second?
What's the best way to measure the Tomcat perfomance?
I guess you don't want to measure Tomcat performance but either Tomcat throughput or user response times/latency. The former can be measured using various JMX metrics exposed by Tomcat whilst the latter is typically measured using JMeter (also see these plugins or many other proprietary tools.
How can I determinate the max number of database connections (pool)?
You can either monitor your database (probably every DBMS has some management capabilities showing the number of open connections) or your connection pool - again C3P0 provides JMX metrics, DBCP not yet (DBCP-292).
How can I track down memory leak
You want to discover the leak or you have already diagnosed one and you are tracking down the cause? Discovering the leak itself is pretty obvious - your application is either crashing with out of heap memory (fast leak) or the usual sawtooth memory utilization function has growing minima (slow leak).
Tracking down memory leak cause is a matter of making memory heap dump and analyzing it using tools like MAT, JProfiler and many others.
cpu leak
Never heard of it, at least not on Java playground.
精彩评论