AI Tool

Revisão do RQ (Redis Queue)

RQ (Redis Queue) é uma biblioteca Python simples para enfileirar tarefas e processá-las em segundo plano com workers, utilizando Redis ou Valkey como seu backend.

RQ (Redis Queue) - AI tool for redis queue. Professional illustration showing core functionality and features.
1RQ (Redis Queue) utiliza Redis ou Valkey como seu backend para armazenar e gerenciar filas de tarefas.
2RQ 2.4.1, lançado em 20 de julho de 2025, introduziu um status de Job 'CREATED' para tarefas ainda não enfileiradas ou adiadas.
3RQ 2.0, lançado em 28 de outubro de 2024, adicionou suporte para múltiplas execuções de tarefas e descontinuou `default_worker_ttl`.
4A biblioteca requer Redis versão 5.0 ou superior, ou Valkey versão 7.2 ou superior, para funcionalidade completa.

Similar Tools

Compare Alternatives

Other tools you might consider

2

Base44 Backend Platform

Shares tags: ai

Visit
</>Embed "Featured on Stork" Badge
Badge previewBadge preview light
<a href="https://www.stork.ai/en/rq-redis-queue" target="_blank" rel="noopener noreferrer"><img src="https://www.stork.ai/api/badge/rq-redis-queue?style=dark" alt="RQ (Redis Queue) - Featured on Stork.ai" height="36" /></a>
[![RQ (Redis Queue) - Featured on Stork.ai](https://www.stork.ai/api/badge/rq-redis-queue?style=dark)](https://www.stork.ai/en/rq-redis-queue)

overview

O que é RQ (Redis Queue)?

RQ (Redis Queue) é uma biblioteca de processamento de tarefas em segundo plano desenvolvida pelos RQ Project Contributors que permite a desenvolvedores, desenvolvedores de aplicações web e arquitetos de sistemas enfileirar tarefas e processá-las em segundo plano com workers. Ela utiliza Redis ou Valkey como seu backend para armazenar tarefas e gerenciar a fila, projetada para baixa barreira de entrada e escalabilidade. RQ permite que aplicações Python descarreguem tarefas demoradas ou bloqueadoras para processos em segundo plano, garantindo que a aplicação principal permaneça responsiva. Ela opera com base no princípio First-In, First-Out (FIFO) para o processamento de tarefas.

Os principais casos de uso para RQ (Redis Queue) incluem processamento assíncrono de tarefas para operações demoradas, como envio de e-mails, geração de relatórios, processamento de imagens ou manipulação de uploads de arquivos sem bloquear a aplicação web principal. Também é empregado em sistemas distribuídos para gerenciar tarefas processadas por múltiplos workers em vários nós. RQ melhora a responsividade da API para frameworks como Flask, Django e FastAPI, movendo tarefas de longa duração para filas em segundo plano. Com a extensão rq-scheduler, as tarefas podem ser agendadas para serem executadas em horários específicos ou após um atraso, aprimorando as capacidades de automação da aplicação. Desenvolvimentos recentes incluem RQ 2.4.1 (20 de julho de 2025), que introduziu um status de Job CREATED, e RQ 2.0 (28 de outubro de 2024), que adicionou suporte para múltiplas execuções de tarefas e compatibilidade com AWS Elasticache Serverless Redis. RQ 1.12.0 (15 de janeiro de 2023) começou a armazenar múltiplos resultados de execução de tarefas, exigindo Redis >= 5.0 Redis Streams.

quick facts

Fatos Rápidos

AtributoValor
DesenvolvedorRQ Project Contributors
Modelo de NegócioCore de Código Aberto
PreçoGratuito (Código Aberto)
PlataformasPython (Biblioteca)
API DisponívelSim (API da Biblioteca Python)
IntegraçõesRedis, Valkey, Flask, Django, FastAPI

features

Principais Recursos do RQ (Redis Queue)

RQ (Redis Queue) oferece um conjunto robusto de recursos para gerenciar tarefas em segundo plano em aplicações Python, aproveitando a velocidade e confiabilidade do Redis ou Valkey. Essas capacidades são projetadas para aprimorar a responsividade e escalabilidade da aplicação.

  • 1Enfileiramento de tarefas para execução em segundo plano, aderindo a uma ordem de processamento First-In, First-Out (FIFO).
  • 2Processamento de tarefas com processos worker dedicados, permitindo a execução concorrente de tarefas.
  • 3Utilização de Redis ou Valkey como um backend de alto desempenho para armazenar dados de tarefas e gerenciar filas.
  • 4Agendamento de tarefas para execução futura em horários específicos ou após um atraso definido via `rq-scheduler`.
  • 5Agendamento de tarefas para execução periódica, permitindo tarefas recorrentes dentro das aplicações.
  • 6Tentativa automática de reexecução de tarefas falhas para garantir a conclusão eventual e melhorar a resiliência do sistema.
  • 7Monitoramento de filas de tarefas para rastrear tarefas pendentes, iniciadas e concluídas.
  • 8Monitoramento da atividade dos workers, incluindo status do worker e estatísticas de processamento.
  • 9Suporte para armazenar múltiplos resultados de execução de tarefas, disponível desde RQ 1.12.0 (requer Redis >= 5.0 Redis Streams).
  • 10Compatibilidade com AWS Elasticache Serverless Redis, introduzida no RQ 2.0.

use cases

Quem Deve Usar RQ (Redis Queue)?

RQ (Redis Queue) é particularmente adequado para desenvolvedores Python e arquitetos de sistemas que buscam uma solução direta, eficiente e escalável para o processamento de tarefas em segundo plano. Seu design prioriza a facilidade de uso e integração, tornando-o uma excelente escolha para cenários de aplicação específicos.

  • 1Desenvolvedores: Para descarregar tarefas demoradas ou bloqueadoras para processos em segundo plano, garantindo que a aplicação principal permaneça responsiva e a experiência do usuário não seja degradada.
  • 2Desenvolvedores de aplicações web (por exemplo, Flask, Django, FastAPI): Para melhorar a responsividade da API, movendo operações de longa duração, como envio de e-mails, geração de relatórios, processamento de imagens ou manipulação de uploads de arquivos para filas em segundo plano.
  • 3Arquitetos de sistemas: Para gerenciar tarefas processadas por múltiplos workers em sistemas distribuídos, aproveitando Redis ou Valkey para gerenciamento eficiente de filas e comunicação interprocessos.
  • 4Equipes que exigem tarefas agendadas: Utilizando a extensão `rq-scheduler` para tarefas que precisam ser executadas em horários específicos ou após um atraso, automatizando operações de rotina dentro de suas aplicações.

pricing

Preços e Planos do RQ (Redis Queue)

RQ (Redis Queue) é uma biblioteca Python de código aberto distribuída sob a licença BSD, tornando sua funcionalidade principal disponível gratuitamente. O projeto opera em um modelo freemium, onde a biblioteca principal é gratuita para uso, mas os usuários podem incorrer em custos pela infraestrutura subjacente de Redis ou Valkey ou por suporte comercial e serviços estendidos de provedores terceirizados. Não há níveis de assinatura diretos ou taxas baseadas em uso impostas pelo próprio projeto RQ.

  • 1Core de Código Aberto: Gratuito (licença BSD)
  • 2Infraestrutura Redis/Valkey: Os custos variam com base no provedor (por exemplo, AWS ElastiCache, Google Cloud Memorystore, instâncias auto-hospedadas) e no uso.

competitors

RQ (Redis Queue) vs Concorrentes

RQ (Redis Queue) é posicionado como uma alternativa leve e simples dentro do ecossistema de filas de tarefas Python, frequentemente comparado a soluções mais ricas em recursos ou especializadas. Sua vantagem competitiva reside em sua baixa barreira de entrada e integração estreita com Redis ou Valkey.

  • 1RQ (Redis Queue) vs Celery: RQ (Redis Queue) é significativamente mais simples de configurar e usar, com menos sobrecarga de configuração, enquanto Celery é um sistema de processamento de tarefas distribuído mais completo e maduro, oferecendo recursos avançados como roteamento complexo de tarefas, motores de fluxo de trabalho e uma gama mais ampla de message brokers além do Redis.
  • 2RQ (Redis Queue) vs Dramatiq: RQ (Redis Queue) oferece uma barreira de entrada muito baixa para filas baseadas em Redis, enquanto Dramatiq é uma alternativa moderna e performática que suporta tanto Redis quanto RabbitMQ, frequentemente considerada mais rica em recursos do que o RQ básico, mas mantendo uma API mais simples que o Celery.
  • 3RQ (Redis Queue) vs Huey: RQ (Redis Queue) fornece uma fila direta baseada em Redis, enquanto Huey, também baseado em Redis, oferece mais recursos embutidos como agendamento, tarefas repetitivas tipo crontab e retentativas automáticas sem a necessidade de pacotes separados como `rq-scheduler`.
  • 4RQ (Redis Queue) vs Prefect: RQ (Redis Queue) é uma fila de tarefas simples para processamento em segundo plano, enquanto Prefect é um framework completo de orquestração de fluxo de trabalho projetado para construir pipelines de dados resilientes e fluxos de trabalho de IA, oferecendo observabilidade robusta, tratamento de erros e semântica transacional para tarefas complexas e dependentes.

Frequently Asked Questions

+O que é RQ (Redis Queue)?

RQ (Redis Queue) é uma biblioteca de processamento de tarefas em segundo plano desenvolvida pelos RQ Project Contributors que permite a desenvolvedores, desenvolvedores de aplicações web e arquitetos de sistemas enfileirar tarefas e processá-las em segundo plano com workers. Ela utiliza Redis ou Valkey como seu backend para armazenar tarefas e gerenciar a fila, projetada para baixa barreira de entrada e escalabilidade.

+RQ (Redis Queue) é gratuito?

Sim, RQ (Redis Queue) é uma biblioteca Python de código aberto distribuída sob a licença BSD, tornando sua funcionalidade principal disponível gratuitamente. Os usuários podem incorrer em custos pela infraestrutura subjacente de Redis ou Valkey, mas não há taxas de assinatura diretas do próprio projeto RQ.

+Quais são os principais recursos do RQ (Redis Queue)?

Os principais recursos do RQ (Redis Queue) incluem enfileiramento e processamento de tarefas em segundo plano com workers, utilizando Redis ou Valkey como backend, agendamento de tarefas para execução futura ou periódica via `rq-scheduler`, tentativa automática de reexecução de tarefas falhas e monitoramento de filas de tarefas e atividade dos workers. Ele também suporta o armazenamento de múltiplos resultados de execução de tarefas e é compatível com AWS Elasticache Serverless Redis.

+Quem deve usar RQ (Redis Queue)?

RQ (Redis Queue) é ideal para desenvolvedores, desenvolvedores de aplicações web (por exemplo, usando Flask, Django, FastAPI) e arquitetos de sistemas que precisam descarregar tarefas demoradas para processos em segundo plano, melhorar a responsividade da API, gerenciar tarefas em sistemas distribuídos ou agendar tarefas futuras e periódicas, particularmente quando já utilizam Redis ou Valkey.

+Como o RQ (Redis Queue) se compara a alternativas?

RQ (Redis Queue) é mais simples e leve que Celery, que oferece recursos mais avançados e suporte a brokers. Comparado a Dramatiq e Huey, o RQ é frequentemente considerado com uma barreira de entrada mais baixa, embora essas alternativas possam oferecer mais recursos embutidos como agendamento sem pacotes separados. Ao contrário de Prefect, que é um orquestrador de fluxo de trabalho completo, o RQ se concentra apenas no enfileiramento simples de tarefas em segundo plano.