Proposal - Define official API performance target for GitLab
As performance testing ramps up for GitLab it's become clear we need an agreed performance target to measure GitLab's endpoints against. We currently have a target in the Handbook for Webpages based on the Speed Index of 2s. This is an industry agreed standard but only applies to web pages and, as such, we should also define a target for our API endpoints.
Looking across the industry for API targets, there doesn't appear to be universally agreed goals on how these endpoints should perform but there are some that agree on the target of 200ms (Google, Telus, Tendri). At this level the API should feel almost instantaneous to users.
Thankfully most of our API endpoints are under this target of 200ms at the expected RPS throughputs, although there are some exceptions that are currently raised as issues. As such, the proposal then is we set a target of 200ms for our APIs officially in the handbook and raise issues accordingly when this target is breached. Additionally the page in the handbook is quite dated and probably needs a rewrite to show today's standards.
This issue is to discuss this proposal and come to an agreed position that we then add to the handbook. Tagging @gl-quality to discuss.