Filas: escolha o motor
O componente Filas da Zenifra tem dois motores gerenciados: Valkey e RabbitMQ. Os dois recebem mensagens de produtores e as entregam a workers, mas resolvem problemas diferentes. Você escolhe o motor ao criar a fila no Console e ele não muda depois da criação.
Qual motor usar
| Valkey | RabbitMQ | |
|---|---|---|
| Foco | Simples e rápido, para tarefas em segundo plano | Mensageria completa para microsserviços |
| Modelo | Streams com consumer groups e Pub/Sub | Exchanges, routing keys e filas com bindings |
| Confirmação | XACK por mensagem | ack/nack por mensagem e confirmação de publicação |
| Dead-letter | Estratégia própria, com outro stream | Nativa, por exchange de dead-letter |
| Protocolo e URL | Clientes Redis, valkeys:// | AMQP 0-9-1, amqps:// |
| Alta disponibilidade | Uma primária e duas réplicas a partir do queue-basic | 3 nós a partir do queue-basic, com filas quorum por padrão |
| Página | Filas com Valkey | Filas com RabbitMQ |
Escolha Valkey quando você precisa de uma fila de tarefas simples, com poucos tipos de mensagem, workers que consomem do mesmo stream e latência baixa. É o caminho mais curto para enviar e-mails, processar webhooks ou gerar arquivos.
Escolha RabbitMQ quando vários serviços trocam mensagens com regras de roteamento, quando você precisa de exchanges e routing keys para distribuir o mesmo evento a filas diferentes, ou de dead-letter nativa para isolar mensagens que falharam.
Planos e preços
Os dois motores usam os mesmos planos pagos (queue-starter, queue-basic, queue-premium e queue-enterprise) e os mesmos preços; o plano gratuito queue-free existe só no Valkey. Os planos Premium e Enterprise incluem métricas na página do projeto. Cada organização pode ter uma Fila gratuita com Valkey: veja Limites e quotas. A capacidade e o preço de cada plano estão no guia de planos e no catálogo de serviços gerenciados.
Permissões necessárias
Criar uma fila exige managed_service.create em organization:*. Para consultar o estado, use managed_service.status.read em managed_service:<project-id>; para conexão mascarada, use managed_service.connection.read; para rotação, use managed_service.credentials.rotate. owner tem acesso completo; assistant, member e API Keys precisam dos grants correspondentes. As permissões são as mesmas nos dois motores.
Criar uma fila
- No Console, abra a criação de um serviço gerenciado e escolha Filas.
- Escolha o motor: Valkey ou RabbitMQ.
- Escolha o plano e confirme.
- Guarde a conexão exibida na criação. A senha só aparece nesse momento e depois de uma rotação de credencial.
Perguntas frequentes
Posso trocar de motor depois de criar a fila?
Não. Crie uma nova fila no outro motor, mova os produtores e consumidores e exclua a antiga quando ela estiver vazia.
Os dois motores têm backup?
Sim. O backup automático está incluído nos dois, com restauração pelo suporte. As garantias de cada motor estão em Filas com Valkey e Filas com RabbitMQ.
Próximos passos
Última atualização em