58 lines
No EOL
1.9 KiB
Markdown
58 lines
No EOL
1.9 KiB
Markdown
# RBAC Performance Test Plan (Goal-2-Task-3)
|
|
|
|
## Test Objectives
|
|
- Validate RBAC performance under production-like load conditions
|
|
- Measure key metrics: role resolution latency, permission check throughput, concurrent session handling, memory usage
|
|
- Identify performance bottlenecks and scaling limits
|
|
|
|
## Test Environment
|
|
- **Infrastructure**: AWS EC2 instances (3x m5.xlarge workers, 1x m5.2xlarge load generator)
|
|
- **Monitoring**: Grafana dashboard with Prometheus metrics collection
|
|
- **Test Duration**: 60 minutes per test scenario
|
|
|
|
## Test Scenarios
|
|
|
|
### Scenario 1: Baseline Performance
|
|
- **Description**: Measure performance with single user session
|
|
- **Parameters**:
|
|
- Users: 1
|
|
- Role assignments: 5 roles per user
|
|
- Permission checks: 1000 sequential checks
|
|
- **Metrics**:
|
|
- Average role resolution latency
|
|
- Permission check throughput
|
|
- Memory usage baseline
|
|
|
|
### Scenario 2: Concurrent Users
|
|
- **Description**: Measure performance with increasing concurrent users
|
|
- **Parameters**:
|
|
- Users: 100 → 1000 → 5000 (ramp up over 10 minutes)
|
|
- Role assignments: 5 roles per user
|
|
- Permission checks: 100 checks per user
|
|
- **Metrics**:
|
|
- 95th percentile latency
|
|
- Throughput under load
|
|
- Memory usage growth
|
|
|
|
### Scenario 3: Complex Role Hierarchies
|
|
- **Description**: Measure impact of complex role structures
|
|
- **Parameters**:
|
|
- Users: 100
|
|
- Role assignments: 20 roles per user (nested hierarchy)
|
|
- Permission checks: 100 checks per user
|
|
- **Metrics**:
|
|
- Role resolution latency distribution
|
|
- CPU utilization
|
|
- Garbage collection impact
|
|
|
|
## Success Criteria
|
|
- P95 role resolution latency < 100ms at 1000 concurrent users
|
|
- Permission check throughput > 500 ops/sec at peak load
|
|
- Memory usage growth < 20% during test duration
|
|
|
|
## Execution Steps
|
|
1. Provision test environment using Terraform
|
|
2. Deploy RBAC service and monitoring
|
|
3. Execute test scenarios using load generator
|
|
4. Collect and analyze metrics
|
|
5. Generate performance report |