Browse Source

Add PID-controlled adaptive rate limiting plan for relay operations

- Design comprehensive rate limiting for both reads (REQ) and writes (EVENT)
- Implement PID controller with filtered derivative to avoid noise amplification
- Apply low-pass filter before derivative computation (bandpass effect)
- Add anti-windup for integral term to prevent saturation
- Support setpoint-based control (target operating point as memory fraction)
- Separate tuning parameters for read vs write operations
- Monitor database-specific metrics (Badger LSM, Neo4j transactions)
- Combine memory pressure (70%) and load level (30%) into process variable
- Include integration examples for WebSocket handlers and import loop
- Add configuration via environment variables with sensible defaults

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
main
mleku 1 month ago
parent
commit
afa3dce1c9
No known key found for this signature in database
  1. 4
      .claude/settings.local.json
  2. 1250
      docs/ADAPTIVE_RATE_LIMITING_PLAN.md

4
.claude/settings.local.json

@ -82,7 +82,9 @@ @@ -82,7 +82,9 @@
"Bash(update-desktop-database:*)",
"Bash(CGO_ENABLED=0 go build:*)",
"Bash(CGO_ENABLED=0 go test:*)",
"Bash(git submodule:*)"
"Bash(git submodule:*)",
"WebFetch(domain:neo4j.com)",
"Bash(git reset:*)"
],
"deny": [],
"ask": []

1250
docs/ADAPTIVE_RATE_LIMITING_PLAN.md

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save