What is JMeter?
JMeter is an open source Java application designed to load test functional behavior and measure performance. JMeter is an Apache project used by a large open source community. Being a part of Apache, JMeter has comprehensive protocol coverage and scripting capabilities.
What can you do with JMeter?
JMeter is used to test performance both on static and dynamic resources such as static files, Java Servlets, CGI scripts, Java objects, databases, FTP servers and more. JMeter can be used to stimulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types. JMeter can run on any environment/platform such as Windows, Linux, Mac, etc. Its multithreading framework is highly extensible and can be used to perform automated and functional testing.
When compared to other testing application, 80% of what is required can be accomplished with a simple, intuitive GUI and not much of scripting is required to achieve that. Since JMeter is backed by such a large community, any use case that comes to mind probably has an answer within JMeter. With JMeter one can build test scripts that are realistic and accurate.
What are JMeter limitations?
One of the major limitation is that everything goes through a single console. Under heavy load the GUI consumes a lot of memory and the console server alone cannot sustain such a heavy load which leads to out of memory and disconnection logs.