Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
- Implemented PolicyDslValidator with command-line options for strict mode and JSON output. - Created PolicySchemaExporter to generate JSON schemas for policy-related models. - Developed PolicySimulationSmoke tool to validate policy simulations against expected outcomes. - Added project files and necessary dependencies for each tool. - Ensured proper error handling and usage instructions across tools.
84 lines
2.4 KiB
JSON
84 lines
2.4 KiB
JSON
{
|
|
"schemaVersion": "notify-dispatch-bench/1.0",
|
|
"capturedAt": "2025-10-26T20:28:56.3603045+00:00",
|
|
"scenarios": [
|
|
{
|
|
"id": "notify_dispatch_density_05",
|
|
"label": "50 rules / 5% fanout",
|
|
"iterations": 5,
|
|
"totalEvents": 5000,
|
|
"totalRules": 50,
|
|
"actionsPerRule": 2,
|
|
"averageMatchesPerEvent": 2,
|
|
"minMatchesPerEvent": 2,
|
|
"maxMatchesPerEvent": 2,
|
|
"averageDeliveriesPerEvent": 4,
|
|
"totalDeliveries": 20000,
|
|
"meanMs": 3.41498,
|
|
"p95Ms": 4.17216,
|
|
"maxMs": 4.3039,
|
|
"meanThroughputPerSecond": 6053938.51717893,
|
|
"minThroughputPerSecond": 4646948.116824276,
|
|
"maxAllocatedMb": 0,
|
|
"thresholdMs": 400,
|
|
"minThroughputThresholdPerSecond": 15000,
|
|
"maxAllocatedThresholdMb": 128,
|
|
"regression": {
|
|
"limit": 1.15,
|
|
"breached": false
|
|
}
|
|
},
|
|
{
|
|
"id": "notify_dispatch_density_20",
|
|
"label": "150 rules / 20% fanout",
|
|
"iterations": 5,
|
|
"totalEvents": 7500,
|
|
"totalRules": 150,
|
|
"actionsPerRule": 3,
|
|
"averageMatchesPerEvent": 30,
|
|
"minMatchesPerEvent": 30,
|
|
"maxMatchesPerEvent": 30,
|
|
"averageDeliveriesPerEvent": 90,
|
|
"totalDeliveries": 675000,
|
|
"meanMs": 24.2274,
|
|
"p95Ms": 25.85172,
|
|
"maxMs": 26.0526,
|
|
"meanThroughputPerSecond": 27923335.585545264,
|
|
"minThroughputPerSecond": 25909122.314087655,
|
|
"maxAllocatedMb": 0,
|
|
"thresholdMs": 650,
|
|
"minThroughputThresholdPerSecond": 30000,
|
|
"maxAllocatedThresholdMb": 192,
|
|
"regression": {
|
|
"limit": 1.15,
|
|
"breached": false
|
|
}
|
|
},
|
|
{
|
|
"id": "notify_dispatch_density_40",
|
|
"label": "300 rules / 40% fanout",
|
|
"iterations": 5,
|
|
"totalEvents": 10000,
|
|
"totalRules": 300,
|
|
"actionsPerRule": 4,
|
|
"averageMatchesPerEvent": 100.002,
|
|
"minMatchesPerEvent": 60,
|
|
"maxMatchesPerEvent": 120,
|
|
"averageDeliveriesPerEvent": 400.008,
|
|
"totalDeliveries": 4000080,
|
|
"meanMs": 138.73866,
|
|
"p95Ms": 147.71738000000002,
|
|
"maxMs": 149.1124,
|
|
"meanThroughputPerSecond": 28916602.921385907,
|
|
"minThroughputPerSecond": 26825938.017227273,
|
|
"maxAllocatedMb": 0,
|
|
"thresholdMs": 900,
|
|
"minThroughputThresholdPerSecond": 45000,
|
|
"maxAllocatedThresholdMb": 256,
|
|
"regression": {
|
|
"limit": 1.15,
|
|
"breached": false
|
|
}
|
|
}
|
|
]
|
|
} |