Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

docker-proxq

Proxq es un proxy HTTP asíncrono escrito en Go que utiliza Redis para gestionar colas de trabajos. Intercepta peticiones, las procesa mediante workers y permite recuperar resultados o respuestas completas posteriormente, eliminando tiempos de espera en conexiones largas.

Ficha actualizada 26 sept 2026, 2:07 · upstream 26 sept 2026, 1:56 · release v0.10.13

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es docker-proxq

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Este proyecto implementa una arquitectura de proxy diferido donde cada solicitud HTTP se convierte en un trabajo asíncrono gestionado por la librería asynq sobre Redis. Al enviar una petición, el servidor devuelve inmediatamente un identificador de trabajo (job ID), permitiendo al cliente continuar sin bloquearse hasta consultar el estado o contenido final. Es ideal para operaciones que requieren mucho tiempo de procesamiento o respuestas voluminosas.

Además, ofrece capacidades avanzadas como caché distribuido en Redis, filtrado por rutas mediante expresiones regulares y mecanismos de reintentos automáticos con backoff exponencial. Soporta bypass directo para peticiones grandes o conexiones WebSocket, evitando la serialización innecesaria y reduciendo la latencia en operaciones de alto rendimiento.

La configuración se realiza mediante un archivo YAML que define upstreams, límites de tamaño, políticas de caché y reglas de filtrado. El sistema distingue claramente entre respuestas generadas por el proxy y las devueltas por el servidor destino mediante cabeceras específicas, facilitando la integración en flujos de trabajo complejos.

CASOS DE USO
  • Procesamiento asíncrono de peticiones HTTP pesadas sin bloquear al cliente
  • Implementación de caché distribuido para respuestas HTTP repetibles
  • Gestión de conexiones largas o WebSocket evitando timeouts del proxy inverso
  • Escalabilidad horizontal mediante cola de trabajos en Redis compartido
  • Filtrado inteligente de tráfico hacia diferentes servidores upstream por prefijos de ruta
PUNTOS DESTACADOS
  • Arquitectura asíncrona que devuelve Job ID instantáneo sin esperar respuesta del upstream
  • Soporte nativo para caché en memoria o Redis con TTL configurable y claves SHA256
  • Mecanismo de reintentos automático con backoff exponencial configurable por upstream
  • Bypass directo para peticiones grandes o WebSocket, evitando buffering en memoria
  • Filtrado de rutas mediante listas blancas o negras usando expresiones regulares
PRECAUCIONES
  • Requiere instancia externa de Redis para persistencia de cola y caché, aumentando la complejidad del despliegue
  • Las peticiones asíncronas requieren un mecanismo de consulta (polling) o webhook externo para obtener resultados
  • El cuerpo de la petición se serializa antes de ser enviado a la cola, lo que puede afectar el rendimiento en microsegundos
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU1 vCPUrecomendación inicial
MEMORIA1 GBRAM estimada
DISCO20 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Docker detectado

Desplegar junto con Redis. Usar variable PROXQ_CONFIG para cargar configuración YAML externa. Ajustar concurrency según capacidad del worker y taskRetention para limpiar datos antiguos de Redis.

✓Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Go
SERVICIOS
Redis
BASES DE DATOS
Redis
PUERTOS
80806379
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.