Vou construir um sistema de fila de tarefas assíncrona com redis e fastapi


Sobre este Serviço
Tradução automática
Eu construo sistemas de fila de tarefas que permitem que sua API aceite uma solicitação instantaneamente e processe o trabalho pesado em
o background.
Arquitetura:
- Interface REST do FastAPI: enfileirar, verificar status, listar tarefas, cancelar
- Redis LPUSH/BRPOP para entrega rápida e confiável de tarefas
- Processos de worker que escalam horizontalmente
- Persistência com SQLite para histórico de tarefas e acompanhamento de status
- Padrão de estratégia para manipuladores de tarefas, facilitando a adição de novos tipos de tarefas
- Docker Compose para desenvolvimento local e implantação na nuvem
Execute docker compose up --scale worker=3 para processar tarefas em paralelo sem tocar na API.
Se o Redis ficar fora do ar, a API permanece ativa e registra erros. Quando o Redis voltar, os workers se reconectam automaticamente.
Conte-me seu caso de uso e eu responderei em até 1 hora.
Conheça mais sobre Federico M
Backend Engineer
- A partir deArgentina
- Membro desdeout. de 2022
- Responde em aprox.:23 horas
Idiomas
Espanhol, Inglês
Tradução automática
Perguntas frequentes
Tradução automática
Isso é parecido com Celery?
Conceito semelhante, mas muito mais simples. Este sistema usa Redis diretamente (LPUSH/BRPOP) sem a sobrecarga do Celery. Ótimo para a maioria dos casos de uso. Se você precisar especificamente do Celery, posso criar também.
Os workers podem escalar independentemente da API?
Sim, os workers são processos separados. Com Docker Compose, você roda docker compose up --scale worker=3 para processar tarefas em paralelo sem mexer na API.
O que acontece se o Redis ficar fora do ar?
A API permanece ativa e registra erros de forma elegante. Quando o Redis voltar, os workers se reconectam automaticamente e continuam o processamento.

