Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
120 changes: 120 additions & 0 deletions docs/concepts/pdp/cloud-pdp-benchmarks.mdx
Original file line number Diff line number Diff line change
@@ -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.

Comment on lines +10 to +11
## 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.
:::
1 change: 1 addition & 0 deletions sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -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",
],
},
Expand Down