Determine configuration(s) of Puma server for performance benchmark
As a performance engineer
I want to determine desirable configurations (one or more that provides good view over different scales of deployment) of Puma web server
So that I can capture baseline and testing data for side-by-side benchmark where we can discover regressions (if any) and demonstrate improvements.
Acceptance criteria: Configuration(s) that specify relevant settings, for example:
- Number of nodes
- Memory allocated per node
- Number of workers per server
- Memory threshold(?)
- Pid timeout threshold(?)
- ...
Update: TODO items (based on discussion bellow):
- get HW info about measured nodes (
pre-puma*.gitlab.com) in a "standardized" way - get performance index for measure nodes by running a standardized benchmarks (e.g. sysbench)
- allow to remotely reconfigure Puma and force it to restart and gather memory metrics (maybe through /chatops?)
- provide a script which can be used in future to execute same tasks on other nodes too. Ideally automate the whole process.
Edited by Craig Gomes