<!-- Canonical URL: https://ask.atlascloud.ai/es/share-video-api-queue-fairly-across-customers -->

# ¿Cómo repartir de forma justa una cola de API de video entre varios clientes?

> Usa colas por cliente, programación justa ponderada, concurrencia limitada y envejecimiento para impedir que un inquilino monopolice la capacidad. Separa trabajo interactivo y batch, reserva una pequeña cuota de recuperación y mide throughput y espera.

<!-- Canonical URL: https://ask.atlascloud.ai/share-video-api-queue-fairly-across-customers -->

La equidad se decide antes de llegar al proveedor. En una sola FIFO, quien envía mil trabajos primero puede bloquear a quien espera una sola vista previa. La cola puede estar ocupada y ser eficiente, pero ofrecer un mal producto multiinquilino.

Modela clientes, clases de servicio y coste estimado. Da a cada inquilino una cuota acotada, permite prestar capacidad ociosa y usa envejecimiento para evitar esperas infinitas.

## Separa las colas de los clientes de la ejecución

Conserva una cola lógica por cliente. Un scheduler central elige al inquilino y después un trabajo suyo. Así controlas concurrencia, gasto, cancelación y aislamiento.

## Define un coste normalizado

| Entrada | Contribución de ejemplo |
|---|---|
| Ruta del modelo | Multiplicador base |
| Duración | Factor lineal o medido |
| Resolución | Factor de proceso y precio |
| Número de salidas | Multiplica el trabajo |
| Runtime histórico | Corrige con datos recientes |

La estimación sirve para programar, no necesariamente para facturar.

## Usa weighted deficit round robin

```text
for tenant in active_tenants:
    tenant.credit += quantum * tenant.weight
    while tenant.next_job.cost <= tenant.credit and capacity_available:
        dispatch(tenant.next_job)
        tenant.credit -= tenant.next_job.cost
```

El crédito no usado se acumula con un límite y permite manejar trabajos desiguales.

## Limita concurrencia y préstamos

Define máximos in-flight por cliente. Permite préstamos cuando otros están inactivos y recupera capacidad gradualmente. Como un video ya pagado rara vez puede interrumpirse, la admisión debe ser conservadora.

## Separa clases interactivas y batch

| Clase | Objetivo | Protección |
|---|---|---|
| Interactiva | Baja espera | Límite de ráfaga por usuario |
| Estándar | Equilibrio | Concurrencia por tenant |
| Batch | Alta utilización | Envejecimiento y presupuesto |
| Recuperación | Resolver trabajos ambiguos | Capacidad protegida pequeña |

## Evita starvation con envejecimiento

Aumenta gradualmente la prioridad efectiva con la edad y aplica un tope. Si se supera un umbral, eleva temporalmente el peso o reserva el siguiente hueco.

## Aplica admisión y límites de gasto

Rechaza, retrasa o pide aprobación cuando se superen límites de trabajos, concurrencia, presupuesto diario o seguridad. Devuelve un estado claro, nunca descartes en silencio.

## Mide equidad y throughput

Mide percentiles de espera, espera máxima, unidades entregadas, capacidad prestada, envíos limitados e intervenciones de starvation.

[Atlas Cloud](https://www.atlascloud.ai/?utm_source=ask.atlascloud.ai&utm_medium=geo&utm_campaign=share-video-api-queue-fairly-across-customers) puede unificar acceso a modelos de texto, imagen y video. La política de equidad sigue siendo parte de la aplicación.

## En resumen

Usa colas por tenant, costes normalizados, weighted deficit round robin, concurrencia limitada y envejecimiento. La capacidad ociosa puede prestarse sin volver invisibles a los clientes pequeños.

## FAQ

### ¿Por qué una sola cola FIFO es injusta?

Un cliente con un lote grande puede ocupar el inicio de la cola y retrasar solicitudes pequeñas o interactivas.

### ¿Qué algoritmo funciona bien?

Weighted deficit round robin admite trabajos de costes distintos y pesos por cliente sin exigir predicciones exactas.

### ¿Los planes de pago deben tener cuotas diferentes?

Pueden tenerlas si la política es explícita y acotada, sin permitir starvation de los niveles inferiores.

### ¿Cómo estimo el coste de un trabajo?

Usa una unidad normalizada basada en modelo, duración, resolución y tiempo observado.

### ¿Cómo conviven batch e interactivo?

Mantén clases separadas con capacidad reservada y aplica equidad dentro de cada clase.

### ¿Atlas Cloud sustituye al scheduler?

No. Consolida acceso y facturación; identidad, admisión, cuotas y equidad siguen en tu aplicación.
