Improve performance of show action for Projects::BlameController under load into next tier
The TTFB (Time to First Byte) of the Projects::BlameController#show
controller and action is over our performance target under load:
* Environment: 10k
* Environment Version: 16.9.0-pre `88128c091a2`
* Option: 60s_200rps
* Date: 2024-01-19
* Run Time: 1h 34m 40.17s (Start: 04:50:52 UTC, End: 06:25:32 UTC)
* GPT Version: v2.13.0
NAME | RPS | RPS RESULT | TTFB AVG | TTFB P90 | REQ STATUS | RESULT
---------------------------------------------------------|-------|----------------------|-----------|-----------------------|----------------|---------
web_project_file_blame | 20/s | 8.34/s (>3.20/s) | 2113.27ms | 2759.70ms (<2400ms) | 100.00% (>99%) | FAILED¹²
Starting from 16.8.0-pre 52a4bd98fa9
the endpoint degraded from 2s to 3s:
Diff - a1b5110b...52a4bd98
Test Details
Testing was done on our 10k Reference Architecture environment with our lab condition GitLab Performance Tool pipeline. The project being tested is a copy of gitlabhq (tarball can be found here). GitLab Performance Tool tests information is listed at Current test details page.
The latest GitLab Performance pipeline results can always be found here. Through this page full Server Metrics can be found via the Metrics Dashboard
link on that page.
As per our performance targets this endpoint's TTFB metric is above the target of 2000 ms which is severity2. Task is to improve the endpoint's performance into next tier.
Description before 2024-01-19
The Projects::BlameController#show
controller and action was found to perform badly under load:
* Environment: 10k
* Environment Version: 15.10.0-pre `6451e57830a`
* Option: 60s_200rps
* Date: 2023-03-02
* Run Time: 1h 43m 44.43s (Start: 04:40:20 UTC, End: 06:24:04 UTC)
* GPT Version: v2.12.2
NAME | RPS | RPS RESULT | TTFB AVG | TTFB P90 | REQ STATUS | RESULT
---------------------------------------------------------|-------|----------------------|-----------|-----------------------|----------------|---------
web_project_file_blame | 20/s | 9.14/s (>3.20/s) | 1929.58ms | 1972.45ms (<2400ms) | 100.00% (>99%) | Passed¹
As part of the new performance targets this page is now in the ~S2 tier.
Task is now to further reduce the performance of this page to the next tier of ~S3 (<2000ms).