Performance, Stability, Reliability with Scalability
Tools:
Jmeter
p95, p99, p999 latency
p99 is the 99th percentile. It means that 99% of the requests should be faster than the given latency. In other words only 1% of the requests are allowed to be slower.
Example:
Here p95 is 6s and p99 is 7s
Latency
Number of requests
Cumulative frequency
1s
5
5
2s
5
10
3s
10
20
4s
40
60
5s
20
80
6s
15
95
7s
4
99
8s
1
100
HA and DR (High Availability and Disaster Recovery)
High Availability (HA) — refers to a system or component that is continuously operational for a desirably long period.
Disaster Recovery (DR) — involves a set of policies and procedures to enable the recovery or continuation of vital infrastructure and systems following a natural or human-induced disaster.
Required HA and DR infrastructure elements
Distributed Approach
Load balancing
Databases
synchronous replication
asynchronous replication
TPS (Transactions per second)
TPS represents the number of transactions that can be processed by a system per second.
In some cases transaction can stand for a “single request” but more often it is a series of requests representing “a piece of business logic” like:
User opens a site
User opens login page
User performs login
RPS (Request per second)
Request per second is the number of HTTP requests processed by a web server or web application in a second
Load Testing
Applying simulated load to a system and measuring the overall impact on the system
Performance Testing
Monitoring and measuring the performance of a system regardless of load
Stress Testing
Increase the simulated load on a system to a point where the system fails