Use the http-max-queued-requests option for load shedding in HA docs

Resolves #26223

Signed-off-by: Ryan Emerson <remerson@redhat.com>
This commit is contained in:
Ryan Emerson 2024-01-17 14:44:08 +00:00 committed by GitHub
parent 0127e0e35b
commit ba76682590
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 17 additions and 18 deletions

View file

@ -53,10 +53,9 @@ By default, {project_name} will queue all incoming requests infinitely, even if
This will use additional memory in the Pod, can exhaust resources in the load balancers, and the requests will eventually time out on the client side without the client knowing if the request has been processed.
To limit the number of queued requests in {project_name}, set an additional Quarkus configuration option.
Configure `quarkus.thread-pool.queue-size` to specify a maximum queue length to allow for effective load shedding once this queue size is exceeded.
Configure `http-max-queued-requests` to specify a maximum queue length to allow for effective load shedding once this queue size is exceeded.
Assuming a {project_name} Pod processes around 200 requests per second, a queue of 1000 would lead to maximum waiting times of around 5 seconds.
// KC22.0.6 - this is still 500
When this setting is active, requests that exceed the number of queued requests will return with an HTTP 503 error.
{project_name} logs the error message in its log.

View file

@ -59,13 +59,13 @@ kubectl wait --for=condition=RollingUpdate=False keycloaks.k8s.keycloak.org/keyc
To enable load shedding, limit the number of queued requests.
.Load shedding with Quarkus thread pool size
.Load shedding with max queued http requests
[source,yaml,indent=0]
----
env:
spec:
additionalOptions:
include::examples/generated/keycloak.yaml[tag=keycloak-queue-size]
----
<1> This change limits the number of queued {project_name} requests.
All exceeding requests are served with an HTTP 503.
See the <@links.ha id="concepts-threads" /> {section} about load shedding for details.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long