Glossary
1. Bottleneck
A bottleneck is a point in an application where congestion and delay occur, slowing down the processing of requests and causing users to experience unacceptable service delays.
2. Capacity
The capacity of a system is the total workload it can handle without violating predetermined key performance acceptance criteria.
3. Capacity test
A capacity test complements load testing by determining your server’s ultimate failure point, whereas load testing monitors results at various levels of load and traffic patterns. You perform capacity testing in conjunction with capacity planning, which you use to plan for future growth, such as an increased user base or increased volume of data. For example, to accommodate future loads, you need to know how many additional resources (such as processor capacity, memory usage, disk capacity, or network bandwidth) are necessary to support future usage levels. Capacity testing helps you to identify a scaling strategy in order to determine whether you should scale up or scale out.
4. Continuous Integration
Continuous Integration is a Software Engineering term describing a process that completely rebuilds and tests an application frequently. Generally it takes the form of a server process or Daemon that monitors a file system or version control system (such as CVS) system for changes and automatically runs the build process (e.g. a make script or Ant-style build script) and then runs test scripts (e.g. JUnit or NUnit). Other approaches use nightly or hourly builds.
5. Endurance test
An endurance test is a type of performance test focused on determining or validating performance characteristics of the product under test when subjected to workload models and load volumes anticipated during production operations over an extended period of time. Endurance testing is a subset of load testing.
6. Horizontal scaling
Adding more computer systems (servers) to the environment. See also: Vertical scaling
7. Instrumentation
Inserting (either statically or dynamically) code around program events in order to capture performance data. See also: Profiling
8. JMX
Java Management Extensions or JMX is a Java technology that supplies tools for managing and monitoring applications, system objects, devices (e.g. printers) and service oriented networks. In the JMX API, a managed bean - or MBean - represents a resource running in the JVM such as an application, a J2EE technical service (transactional monitor, JDBC driver). They can be used for getting and setting applications configuration (pull), for collecting statistics (pull) (e.g. performance, resources usage, problems) and notifying events (push) (e.g. faults, state changes)
9. Latency
In general terms, a time delay between the moment something is initiated, and the moment one of its effects begins. In the realm of software performance, latency is often referred to in the contexts of server latency, network latency and disk latency.
10. Load Test
A performance test focused on determining or validating performance characteristics of the product under test when subjected to workload models and load volumes anticipated during production operations
11. Performance
Performance refers to information regarding your application’s response times, throughput, and resource utilization levels.
12. Performance test
A performance test is a technical investigation done to determine or validate the speed, scalability, and/or stability characteristics of the product under test. Performance testing is the superset containing all other subcategories of performance testing.
13. Profiling
The insertion of tools into program code that traces events captures metrics as the program is running. Examples of java profiling tools are JProbe, JXInsight and dynaTrace. Also see: Instrumentation
14. Response time
Response time is the amount of time that it takes for a server to respond to a request.
15. Saturation
Saturation refers to the point at which a resource has reached full utilization.
