Skip to content
Apixo
Blog
news· 2 min read· via Towards AI

Why Your Self-Hosted vLLM Server Never Rejects Requests

Discover how unconstrained request queues in self-hosted vLLM servers impact agent performance, and learn how vLLM 0.33 addresses this with new admission control flags.

Why Your Self-Hosted vLLM Server Never Rejects Requests

Modern AI coding agents can generate massive request bursts in mere seconds, yet popular self-hosted serving engines like vLLM, SGLang, and llama.cpp accept every incoming call by default. When these servers run out of GPU slots, they do not turn clients away; instead, they place requests into an unbounded internal queue. This silent waiting can stretch time-to-first-token (TTFT) metrics to unacceptable lengths, creating severe latency bottlenecks for automated workflows.

Discussions highlighted by industry engineers show that an agent attempting to fix a single test might dispatch forty to fifty model requests in quick succession. Because gateways check API keys and routers pick replicas without knowing the actual engine load, requests enter the scheduling queue unhindered. Without proper admission control, the tail-end of a large burst can experience severe delays, leaving the slowest five percent of calls waiting nearly thirty-seven seconds just to receive a first token.

Understanding vLLM's Admission Control Flags

Version 0.33 of vLLM introduces native configuration flags designed to cap waiting requests and prompt tokens, effectively transforming endless silent waiting into an immediate HTTP 503 response. The scheduler parameters max_num_queued_reqs and max_num_queued_tokens both default to None, meaning the system will indefinitely accept and queue incoming calls out of the box.

By establishing strict queue limits—such as aligning the cap closely with active GPU slot counts—servers can reject excess load instantly. While a queue cap does not magically manufacture additional GPU compute capacity, it trades indefinite waiting for a predictable, fast rejection code. This gives automated clients the opportunity to back off gracefully using jittered retries rather than hanging indefinitely on stalled connections.

What it means for developers

Developers running local inference engines must explicitly configure queue boundaries rather than relying on default settings. For those exploring alternative endpoints or prototyping production architectures, developers can try top AI models cheaply through one API at https://apixoai.online. When deploying self-hosted infrastructure, enabling flags like --max-num-queued-reqs prevents agentic workflows from overwhelming local hardware resources.

Engineers should also remain vigilant regarding telemetry and metric names. Monitoring systems must track accurate counters like vllm:num_requests_waiting and the current vllm:kv_cache_usage_perc, avoiding deprecated metric identifiers that could break automated autoscaling or observability dashboards. When client applications encounter a fast HTTP 503, implementing robust exponential backoff with jitter ensures that retrying agents do not inadvertently compound traffic spikes.


Source: Why Your Self-Hosted vLLM Server Never Says No — Towards AI. Written by the Apixo team from that report.

#ai-news#vllm#ai#llm#devops#performance
Try it with your own tools

One key for Claude, GPT, GLM, DeepSeek and more. Pay per token with crypto.

Get your API key

Keep reading