Apache JMeter is an Apache project that can be used as a load testing tool for analyzing and measuring the performance of a variety of services, with a focus on web applications.
JMeter can be used as a unit-test tool for JDBC database connections, FTP, LDAP, Webservices, JMS, HTTP, generic TCP connections and OS native processes. One can also configure JMeter as a monitor, although this is typically used as a basic monitoring solution rather than advanced monitoring. It can be used for some functional testing as well. Additionally Jmeter supports integration with Selenium which allows it to run automation scripts alongside performance or load tests
JMeter supports variable parameterization, assertions response validation, per-thread cookies, configuration variables and a variety of reports.
JMeter architecture is based on plugins. Most of its "out of the box" features are implemented with plugins
JMeter Plugins is an independent project for Apache JMeter. Each plugin serves different purpose and expedites the process of creating and executing JMeter Test Plan. Users can install plugins via the Plugin Manager.