Skip to content

WIP: cli/request: cache downloaded schemas for better performance

Jérome Perrin requested to merge fix/request-download-speed into master
$ hyperfine '/opt/slapgrid/6e20b8c5973e1cddecf5f971559bbe32/bin/slapos request --parameters-file=req.json instance-1.4.13 https://lab.nexedi.com/nexedi/slapos/-/raw/1.0.395/software/erp5/software.cfg' 'slapos request --parameters-file=req.json instance-with-schema-cache https://lab.nexedi.com/nexedi/slapos/-/raw/1.0.395/software/erp5/software.cfg'
Benchmark 1: /opt/slapgrid/6e20b8c5973e1cddecf5f971559bbe32/bin/slapos request --parameters-file=req.json instance-1.4.13 https://lab.nexedi.com/nexedi/slapos/-/raw/1.0.395/software/erp5/software.cfg
  Time (mean ± σ):      4.347 s ±  0.269 s    [User: 0.839 s, System: 0.075 s]
  Range (min … max):    4.146 s …  5.060 s    10 runs
 
Benchmark 2: slapos request --parameters-file=req.json instance-with-schema-cache https://lab.nexedi.com/nexedi/slapos/-/raw/1.0.395/software/erp5/software.cfg
  Time (mean ± σ):     726.4 ms ±  18.9 ms    [User: 655.3 ms, System: 60.1 ms]
  Range (min … max):   703.4 ms … 772.5 ms    10 runs
 
Summary
  slapos request --parameters-file=req.json instance-with-schema-cache https://lab.nexedi.com/nexedi/slapos/-/raw/1.0.395/software/erp5/software.cfg ran
    5.98 ± 0.40 times faster than /opt/slapgrid/6e20b8c5973e1cddecf5f971559bbe32/bin/slapos request --parameters-file=req.json instance-1.4.13 https://lab.nexedi.com/nexedi/slapos/-/raw/1.0.395/software/erp5/software.cfg
Edited by Jérome Perrin

Merge request reports