registrystack / registrystack/registry-stack
Measure and publish reproducible Registry Stack 1.0 capacity profiles
- Vorherrschende Sprache
- Rust
- Sterne
- 2
- Forks
- 0
- Ø Merge
- 2 Std. 55 Min.
- Gemergte PRs (30 T.)
- 130
Beschreibung
## Outcome
An adopter can estimate a safe starting topology for Registry Stack 1.0 from measured, reproducible workload profiles and can rerun the same methodology with its own dataset and service-level assumptions.
The result is bounded evidence, not a universal throughput or hardware guarantee.
## Required workload model
Document the input variables that materially affect capacity, including:
- row count, column count, value sizes, indexes, refresh mode, and retained generations;
- source latency, error rate, pagination, OAuth/JWKS behavior, and refresh cadence;
- consultation rate, route mix, claim mix, purpose mix, batch size, and concurrency;
- credential issuance and verification rate where enabled;
- PostgreSQL latency, pool limits, durability settings, and backup activity;
- audit sink and acknowledgement behavior; and
- CPU architecture, container runtime, image digest, product versions, and resource limits.
Define at least small, medium, and large synthetic profiles with explicit exclusions.
## Definition of Done
- [ ] Relay load and soak tests run against every published profile with committed thresholds and reproducible commands.
- [ ] Notary has end-to-end load and soak coverage for consultation-backed evaluation and each 1.0 credential path, not only microbenchmarks.
- [ ] Combined Relay/Notary testing records throughput, latency distribution, error distribution, CPU, memory, database saturation, queue/pool behavior, and recovery after overload.
- [ ] Recommended starting CPU, memory, disk, PostgreSQL, and concurrency settings are published for the exact supported Compose profile.
- [ ] Backpressure, 429/503 behavior, bounded memory, readiness degradation, and recovery are tested under overload and dependency failure.
- [ ] Results record exact source revision, release artifacts, workload inputs, host specification, commands, raw machine-readable results, and known limitations.
- [ ] The sizing worksheet allows operators to replace defaults with their own assumptions and clearly identifies variables that require a measured deployment test.
- [ ] A release gate detects missing, stale, or incompatible profile evidence.
## Non-goals
- A universal TPS promise.
- Sizing an institution's ingress, identity provider, monitoring stack, network, source registry, or managed database service.
- Treating one synthetic result as proof for arbitrary country data or policy.
## Related work
- #101
- #109
- #113
- #363
- #496
Beitragsleitfaden
Rechercherichtung
Beginnen Sie mit der Durchsicht der zugehörigen Issues #101, #109, #113, #363 und #496. Ermitteln Sie anschließend die Einstiegspunkte für Load- und Soak-Tests für das unterstützte Compose-Profil. Definieren Sie die Eingaben und Ausschlüsse für kleine, mittlere und große Workloads und legen Sie reproduzierbare Befehle sowie festgeschriebene Schwellenwerte fest. Als abgeschlossen gilt die Arbeit, wenn veröffentlichte Dimensionierungsrichtlinien, unverarbeitete maschinenlesbare Nachweise, ein anpassbares Arbeitsblatt, Ergebnisse zu Überlastung und Abhängigkeitsausfällen sowie ein Release-Gate für fehlende oder veraltete Profile vorhanden sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- docker-compose, postgresql, rust
- Bereich
- backend-api-design, databases, documentation, performance, release, testing
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100