Loch Queue Manager
Loch Queue Manager is a Traefik v3 middleware plugin (tested with Traefik v3.6). It lets a set number of visitors use a service at the same time and shows the others a waiting page until a slot frees up.

How it works
- Each visitor gets an identifier: a cookie (
loch-queue-idby default) or a hash of the IP address and User-Agent. - While fewer than
maxEntriesvisitors are active, a new visitor goes straight through and becomes active. - When the service is full, the visitor joins a FIFO queue and gets the waiting page with HTTP
429. The page reloads itself every 20 seconds. - Every 30 seconds, the plugin drops active visitors idle for more than 60 seconds and lets in the head of the queue.
All values are configurable: Configuration reference.
Features
- Cap on concurrent visitors, with an inactivity timeout and an optional hard session limit.
- Waiting page built from your own HTML template, with position, queue size, approximate wait time and a progress bar.
- Page texts in English, French, Spanish, German, Portuguese and Italian, chosen from the browser's
Accept-Language. - JSON response instead of HTML for clients that send
Accept: application/json. - Per-IP rate limit for requests without the queue cookie.
Next steps
- Install the plugin and attach the middleware to a router.
- Size the capacity and timeouts.
- Customize the waiting page.
- Read the limits before going to production.
About and license
Loch Queue Manager is published under the Apache License 2.0. Source code: github.com/loch-sh/traefik-queue.
From the NOTICE file:
Loch Queue Manager Copyright 2025 Loch.sh
This product is a derivative work of Traefik Queue Manager (https://github.com/hhftechnology/traefik-queue-manager), developed by HHF Technology and licensed under the Apache License, Version 2.0.
The original source files have been modified by Loch.sh. Changes include, among others: renaming of the Go package and module, split of the code into multiple files, JSON API responses and rate limiting.