I have written a small java application for which I need to obtain performance metrics such as memory usage, running time etc., Is there any simple to use performance measurement tool available?
相关问题
- Delete Messages from a Topic in Apache Kafka
- Jackson Deserialization not calling deserialize on
- How to maintain order of key-value in DataFrame sa
- StackExchange API - Deserialize Date in JSON Respo
- Difference between Types.INTEGER and Types.NULL in
One program that doesn't get mentioned is Oracle's (BEA) Mission Control. It comes with the JRockit JVM (which is supposed to be the fastest JVM on the Intel platform), which is available free from http://www.oracle.com/technology/software/products/jrockit/index.html.
Mission Control is essentially Oracle/BEA's counterpart to JConsole, but offers significantly more. It'll even work with other JVMs, though you'll need JRockit to take advantage of the more advanced features (e.g., method profiling).
Yourkit is pretty good (free 30 day trial). Eclipse also has built in TPTP tools.
Apache JMeter has a ton of features, for benchmarking http requests, JDBC calls, web services, JMS, mail, regular Java requests, etc.
For runtime metrics, use any profiler such as VisualVM, Netbeans Profiler, or the Eclipse TPTP Tools. A profiler usually gives you more fine-grained metrics such as the runtime for individual functions, hotspots, etc.
You might also check out the list of Open Source JMX tools.
Use these in combination with JMeter and other such load-generator tools.