...
JMeter for the web applications (onadata and OpenSRP)
Tested Authentication and Submissions
Locust
SEIT team will need to learn
Locust
Apache bench
Tsung
We have used it with Ona Data Platform(about 6 years ago) to address some performance issues on some endpoints.
OpenSRP team has also used this
Implementing it in the Ona projects
Performance Testing
OpenSRP APIs
Stress Testing
Measuring the performance outside the normal working conditions.
OpenSRP APIs
Start with the frequently used endpoints: (maps, tables and chats)
Submissions
Exports
Data view features make sense to test it. How do we determine the endpoints we need to focus on?
Look at Greylogs to identify the areas we should focus on.
We might need to develop a correct scenario
We will use JMeter for now then Locust with time
To be able to predict/estimate what load can be handled in a given environment.
99.5% in our SLA. We can benchmark using this as our pass rate.
We should involve the SRE team, the QA team and the Engineers for a collaboration.
What is important for QA? For SRE? Combine efforts to figure out how we can achieve that
In a production env, we split submission servers with API servers to prevent traffic caused from APIS
All APIS requests and submission servers are separate
Data view features
Exports are usually asynchronous. So why exports?
Role of the different teams
Work together
There are 3 environments (staging, production, preview)
Look at the specs of those environments and compare the two. They should be similar to the live environment.
The results might be skewed from what is expected.
For the Ona data platform, preview is a replica of the production
Metrics used in Performance Testing
...
Simulate different strategies for different APIs Not all endpoints are hit equally.
Tasks:
Environment setup -
Scripting ; how to generate data (QA)
Running the scripts (QA+ SRE)
Reporting
Indicators to measure load testing - should be guided by what the engineers think a healthy system should look like.
Performance Testing Steps
...
Important notes to go through:
...