From 5c11eab95f0de040c286cdda45c92243f5989bf2 Mon Sep 17 00:00:00 2001 From: Omer Zuarets Date: Tue, 21 Apr 2026 11:09:30 +0300 Subject: [PATCH] Add Cloud PDP benchmarks page with RBAC and ReBAC performance data Co-Authored-By: Claude Opus 4.6 (1M context) --- docs/concepts/pdp/cloud-pdp-benchmarks.mdx | 120 +++++++++++++++++++++ sidebars.js | 1 + 2 files changed, 121 insertions(+) create mode 100644 docs/concepts/pdp/cloud-pdp-benchmarks.mdx diff --git a/docs/concepts/pdp/cloud-pdp-benchmarks.mdx b/docs/concepts/pdp/cloud-pdp-benchmarks.mdx new file mode 100644 index 00000000..6db4fe30 --- /dev/null +++ b/docs/concepts/pdp/cloud-pdp-benchmarks.mdx @@ -0,0 +1,120 @@ +--- +sidebar_position: 3 +title: Cloud PDP Benchmarks +--- + +# Cloud PDP Benchmarks + +This page presents performance benchmarks for the **Cloud PDP**, measured across different policy models, concurrency levels, and relationship depths. + +All tests were run against a production Cloud PDP endpoint over a **10-minute window** per scenario. Latencies are round-trip times (request → response) over HTTPS. + +## RBAC + +### Single Concurrency + +| Metric | Avg | Min | Max | +| --- | --- | --- | --- | +| Throughput | 5.80 req/s | 5.60 req/s | 6.00 req/s | +| Average latency | 8.17 ms | 7.12 ms | 9.80 ms | +| Min latency | 6.24 ms | 5.90 ms | 6.65 ms | +| Max latency | 34.12 ms | 7.96 ms | 89.57 ms | +| P50 | 7.24 ms | 7.11 ms | 7.45 ms | +| P75 | 7.61 ms | 7.34 ms | 7.93 ms | +| P90 | 8.50 ms | 7.57 ms | 13.64 ms | +| P95 | 11.35 ms | 7.81 ms | 23.47 ms | +| P99 | 20.14 ms | 7.93 ms | 50.17 ms | + +### 10 Concurrent Requests + +| Metric | Avg | Min | Max | +| --- | --- | --- | --- | +| Throughput | 56.5 req/s | 54.6 req/s | 57.3 req/s | +| Average latency | 7.80 ms | 6.23 ms | 14.8 ms | +| Min latency | 4.82 ms | 4.64 ms | 5.1 ms | +| Max latency | 53.65 ms | 13.13 ms | 97.0 ms | +| P50 | 6.43 ms | 6.00 ms | 9.9 ms | +| P75 | 7.82 ms | 6.58 ms | 19.8 ms | +| P90 | 10.78 ms | 7.22 ms | 33.0 ms | +| P95 | 14.16 ms | 7.81 ms | 43.6 ms | +| P99 | 29.94 ms | 10.00 ms | 56.8 ms | + +## ReBAC + +### Depth 1 — Single Concurrency + +*Folder → File* + +| Metric | Avg | Min | Max | +| --- | --- | --- | --- | +| Throughput | 5.43 req/s | 5.20 req/s | 5.60 req/s | +| Average latency | 9.87 ms | 8.90 ms | 12.20 ms | +| Min latency | 8.04 ms | 7.35 ms | 8.50 ms | +| Max latency | 28.34 ms | 10.13 ms | 63.80 ms | +| P50 | 9.05 ms | 8.70 ms | 9.50 ms | +| P75 | 9.59 ms | 9.12 ms | 12.40 ms | +| P90 | 10.81 ms | 9.26 ms | 16.90 ms | +| P95 | 13.32 ms | 9.55 ms | 23.10 ms | +| P99 | 17.84 ms | 10.00 ms | 45.70 ms | + +### Depth 1 — 10 Concurrent Requests + +*Folder → File* + +| Metric | Avg | Min | Max | +| --- | --- | --- | --- | +| Throughput | 54.7 req/s | 51.7 req/s | 56.2 req/s | +| Average latency | 11.3 ms | 9.07 ms | 18.2 ms | +| Min latency | 6.5 ms | 5.90 ms | 7.8 ms | +| Max latency | 63.9 ms | 21.22 ms | 258.5 ms | +| P50 | 9.5 ms | 8.57 ms | 14.5 ms | +| P75 | 11.7 ms | 9.40 ms | 22.8 ms | +| P90 | 15.9 ms | 10.81 ms | 33.5 ms | +| P95 | 20.1 ms | 12.05 ms | 43.0 ms | +| P99 | 40.0 ms | 13.43 ms | 153.2 ms | + +### Depth 2 — 10 Concurrent Requests + +*Drive → Folder → File* + +| Metric | Avg | Min | Max | +| --- | --- | --- | --- | +| Throughput | 54.5 req/s | 51.2 req/s | 56.3 req/s | +| Average latency | 13.3 ms | 10.8 ms | 21.2 ms | +| Min latency | 7.2 ms | 6.7 ms | 8.1 ms | +| Max latency | 71.0 ms | 31.7 ms | 103.0 ms | +| P50 | 10.9 ms | 10.0 ms | 15.7 ms | +| P75 | 13.7 ms | 11.2 ms | 25.8 ms | +| P90 | 19.1 ms | 13.6 ms | 40.4 ms | +| P95 | 26.1 ms | 15.2 ms | 50.2 ms | +| P99 | 47.5 ms | 18.6 ms | 68.4 ms | + +### Depth 3 — 10 Concurrent Requests + +*Drive → Folder → File → Comment* + +| Metric | Avg | Min | Max | +| --- | --- | --- | --- | +| Throughput | 53.6 req/s | 48.8 req/s | 55.0 req/s | +| Average latency | 14.5 ms | 11.8 ms | 20.6 ms | +| Min latency | 8.0 ms | 7.2 ms | 9.2 ms | +| Max latency | 71.1 ms | 21.6 ms | 125.8 ms | +| P50 | 12.0 ms | 10.8 ms | 16.4 ms | +| P75 | 15.1 ms | 12.2 ms | 25.8 ms | +| P90 | 20.5 ms | 15.0 ms | 36.8 ms | +| P95 | 26.7 ms | 16.4 ms | 45.0 ms | +| P99 | 48.6 ms | 18.9 ms | 73.9 ms | + +## Key Takeaways + +- **Sub-15 ms average latency** across all policy models at the P50 level, even under concurrent load. +- **Throughput scales linearly** — 10 concurrent requests yield ~10x throughput with minimal latency increase. +- **ReBAC depth has modest impact** — adding relationship depth (1 → 3 hops) increases average latency by only ~3 ms under the same concurrency. +- **Tail latencies stay low** — P99 remains under 50 ms for most scenarios, suitable for latency-sensitive applications. + +:::note +These benchmarks reflect network round-trip times over HTTPS to the Cloud PDP. +Actual latency in your application depends on network proximity, payload size, +and policy complexity. For the lowest possible latency, +consider deploying the [Edge PDP](/concepts/pdp/overview#run-an-edge-pdp-with-docker) alongside your application. +::: diff --git a/sidebars.js b/sidebars.js index f13d4968..183f654b 100644 --- a/sidebars.js +++ b/sidebars.js @@ -362,6 +362,7 @@ const sidebars = { items: [ "concepts/pdp/configuration", "concepts/pdp/cloud-pdp-capabilities", + "concepts/pdp/cloud-pdp-benchmarks", "how-to/manage-data/local-facts-uploader", ], },