tailcall
tailcall copied to clipboard
perf: use custom HTTP Cache
Summary:
PR contains a benchmark for execute method present in http.rs
.
currently the benchmark only tests execute method with http_cache set to true.
bench results: before: [38.054 µs 38.204 µs 38.428 µs] after: [18.419 µs 18.432 µs 18.449 µs] performance improvement : 51%.
Issue Reference(s):
related to #1852
Build & Testing:
- [x] I ran
cargo test
successfully. - [ ] I have run
./lint.sh --mode=fix
to fix all linting issues raised by./lint.sh --mode=check
.
Checklist:
- [x] I have added relevant unit & integration tests.
- [x] I have updated the documentation accordingly.
- [x] I have performed a self-review of my code.
- [x] PR follows the naming convention of
<type>(<optional scope>): <title>
Bencher
Report | Sat, May 18, 2024 at 14:23:14 UTC |
Project | tailcall |
Branch | 1910/merge |
Testbed | benchmarking-runner |
🚨 1 ALERT: Threshold Boundary Limit exceeded!
Benchmark | Measure (units) | View | Value | Lower Boundary | Upper Boundary |
---|---|---|---|---|---|
input/vars.missing | Latency (nanoseconds (ns)) | 🚨 (view plot | view alert) | 11.11 (+30.06%) | 10.90 (101.87%) |
Click to view all benchmark results
Benchmark | Latency | Latency Results nanoseconds (ns) | (Δ%) | Latency Upper Boundary nanoseconds (ns) | (%) |
---|---|---|---|
group_by | ✅ (view plot) | 545.23 (-8.90%) | 648.41 (84.09%) |
input/args.missing | ✅ (view plot) | 22.81 (-7.72%) | 27.22 (83.81%) |
input/args.nested.existing | ✅ (view plot) | 41.10 (-20.80%) | 65.98 (62.30%) |
input/args.nested.missing | ✅ (view plot) | 37.10 (-3.67%) | 40.63 (91.31%) |
input/args.root | ✅ (view plot) | 38.43 (-20.70%) | 62.48 (61.51%) |
input/headers.existing | ✅ (view plot) | 32.33 (+1.70%) | 33.48 (96.56%) |
input/headers.missing | ✅ (view plot) | 31.77 (+3.12%) | 33.40 (95.10%) |
input/value.missing | ✅ (view plot) | 23.09 (-1.92%) | 25.35 (91.09%) |
input/value.nested.existing | ✅ (view plot) | 40.94 (-1.29%) | 43.93 (93.21%) |
input/value.nested.missing | ✅ (view plot) | 37.00 (+1.59%) | 38.38 (96.42%) |
input/value.root | ✅ (view plot) | 37.72 (-1.96%) | 40.41 (93.32%) |
input/vars.existing | ✅ (view plot) | 7.46 (-8.59%) | 9.06 (82.28%) |
input/vars.missing | 🚨 (view plot | view alert) | 11.11 (+30.06%) | 10.90 (101.87%) |
test_batched_body | ✅ (view plot) | 2,609.50 (-99.69%) | 2,642,500.87 (0.10%) |
test_batched_body #2 | ✅ (view plot) | 1,643,700.00 (-5.37%) | 1,887,313.85 (87.09%) |
test_data_loader | ✅ (view plot) | 460,950.00 (-2.39%) | 490,227.06 (94.03%) |
test_handle_request | ✅ (view plot) | 157,440.00 (-7.37%) | 183,550.74 (85.77%) |
test_http_execute_method | ✅ (view plot) | 17,926.00 (-1.19%) | 19,093.74 (93.88%) |
with_mustache_expressions | ✅ (view plot) | 1,181.60 (+0.82%) | 1,237.10 (95.51%) |
with_mustache_literal | ✅ (view plot) | 721.59 (-0.38%) | 773.47 (93.29%) |
Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help
Action required: PR inactive for 2 days. Status update or closure in 5 days.
Codecov Report
Attention: Patch coverage is 95.78947%
with 4 lines
in your changes are missing coverage. Please review.
Project coverage is 82.16%. Comparing base (
7f9913d
) to head (528d36e
).
Files | Patch % | Lines |
---|---|---|
tailcall-http-cache/src/cache.rs | 97.84% | 2 Missing :warning: |
src/cli/runtime/http.rs | 0.00% | 1 Missing :warning: |
src/core/runtime.rs | 0.00% | 1 Missing :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## main #1910 +/- ##
==========================================
+ Coverage 82.08% 82.16% +0.08%
==========================================
Files 173 174 +1
Lines 17623 17716 +93
==========================================
+ Hits 14465 14556 +91
- Misses 3158 3160 +2
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Action required: PR inactive for 2 days. Status update or closure in 5 days.