feat(resilience): add hierarchical concurrency admission

This commit is contained in:
Ravi Tharuma
2026-08-24 05:05:34 +02:00
committed by Markus Hartung
parent 943b9aaa84
commit 2b9f25accb
15 changed files with 485 additions and 248 deletions

View File

@@ -13,6 +13,7 @@ type RequestQueueSettings = {
requestsPerMinute: number;
minTimeBetweenRequestsMs: number;
concurrentRequests: number;
globalConcurrentRequests: number;
maxWaitMs: number;
};
@@ -240,13 +241,21 @@ function RequestQueueCard({
}
/>
<NumberField
label={t("resilienceConcurrentRequests")}
label={t("resilienceConnectionScopeConcurrentRequests")}
value={draft.concurrentRequests}
min={1}
onChange={(concurrentRequests) =>
setDraft((prev) => ({ ...prev, concurrentRequests }))
}
/>
<NumberField
label={t("resilienceGlobalConcurrentRequests")}
value={draft.globalConcurrentRequests}
min={0}
onChange={(globalConcurrentRequests) =>
setDraft((prev) => ({ ...prev, globalConcurrentRequests }))
}
/>
<NumberField
label={t("resilienceMaxQueueWait")}
value={draft.maxWaitMs}
@@ -278,11 +287,21 @@ function RequestQueueCard({
</div>
</div>
<div className="rounded-xl border border-border bg-bg-subtle p-4">
<div className="text-xs text-text-muted">{t("resilienceConcurrentRequests")}</div>
<div className="text-xs text-text-muted">
{t("resilienceConnectionScopeConcurrentRequests")}
</div>
<div className="mt-1 text-sm font-semibold text-text-main">
{value.concurrentRequests}
</div>
</div>
<div className="rounded-xl border border-border bg-bg-subtle p-4">
<div className="text-xs text-text-muted">
{t("resilienceGlobalConcurrentRequests")}
</div>
<div className="mt-1 text-sm font-semibold text-text-main">
{value.globalConcurrentRequests || t("statusDisabled")}
</div>
</div>
<div className="rounded-xl border border-border bg-bg-subtle p-4">
<div className="text-xs text-text-muted">{t("resilienceMaxQueueWait")}</div>
<div className="mt-1 text-sm font-semibold text-text-main">