A criação de aplicativos por meio de componentes individuais, em que cada um deles executa uma função diferente, é uma melhor prática que otimiza a escalabilidade e a confiabilidade. Ao usar as filas de mensagens, é possível enviar, armazenar e receber mensagens entre componentes de aplicativo de qualquer volume, sem perder mensagens nem precisar de outros serviços para manter-se sempre disponível.

As filas de mensagens oferecem várias opções que permitem especificar como as mensagens são entregues, priorizadas e protegidas. As opções estão descritas aqui. As filas também podem ser combinadas com um sistema de mensagens de publicação/assinatura em um padrão de projeto distribuído.

O que é uma fila de mensagens?

É possível começar a usar o Amazon Simple Queue Service (SQS) executando apenas três comandos simples.

Testar gratuitamente o Amazon SQS

O nível gratuito da AWS inclui 1 milhão de solicitações com o Amazon Simple Queue Service (SQS).

Veja os detalhes do nível gratuito da AWS »


A maioria das filas de mensagens disponibilizam opções de recuperação de mensagens por push e por pull. O recebimento por pull significa consultar continuamente a fila para verificar a existência de novas mensagens. O recebimento por push significa que o consumidor é notificado quando há uma mensagem disponível (também conhecido como sistema de mensagens de publicação/assinatura). Também é possível usar a opção de sondagem longa para permitir que Pulls esperem durante uma quantidade especificada de tempo pela chegada de novas mensagens antes de ser concluídos.

Muitas filas de mensagens oferecem suporte à definição de um horário de entrega específico para uma mensagem. Se for necessário um atraso comum para todas as mensagens, será possível configurar uma fila de atraso.

As filas de mensagens podem armazenar várias cópias de mensagens para obter redundância e alta disponibilidade, e reenviar as mensagens no caso de falhas ou erros de comunicação para garantir que sejam entregues no mínimo uma vez.

Quando as duplicidades não forem permitidas, as filas de mensagens First-in-first-out (FIFO – Primeira a entrar, primeira a sair) garantirão que cada mensagem seja entregue exatamente uma vez (e apenas uma vez) por meio da filtragem automática de duplicidades.

Nessas filas, a entrada mais antiga (ou a primeira), às vezes chamada de "cabeça" da fila, é processada primeiro. Para saber mais sobre as filas FIFO do Amazon SQS, consulte o guia do desenvolvedor.

Leia também nossos blogs: Using Python and Amazon SQS FIFO Queues to Preserve Message Sequencing, How the Amazon SQS FIFO API Works e FIFO Queues with Exactly-Once Processing & Deduplication.

Uma dead letter queue é uma fila para a qual outras filas podem enviar mensagens que não podem ser processadas com sucesso. Isso torna mais fácil separá-las para uma inspeção mais detalhada sem bloquear o processamento da fila nem despender ciclos de CPU em uma mensagem que talvez nunca seja consumida com sucesso.

Para saber mais sobre dead letter queues, leia nosso blog: Using Amazon SQS Dead-Letter Queues to Control Message Failure. Para saber como usar as dead letter queues no Amazon SQS, consulte nosso Guia do desenvolvedor.

Normalmente, é possível atribuir uma prioridade a uma mensagem para determinar onde na fila a mensagem será adicionada, para garantir que a mensagem com a prioridade mais alta seja enviada para o início da fila e processada primeiro.

A maioria das filas de mensagens disponibiliza uma classificação do tipo melhor esforço que garante, de forma geral, que as mensagens sejam entregues na mesma ordem em que foram enviadas e que uma mensagem seja entregue pelo menos uma vez.

As mensagens com conteúdo malicioso são um tipo especial de mensagem que pode ser recebido, mas não processado. Elas são um mecanismo usado para avisar a um consumidor que encerre seu trabalho para que ele não espere mais por novas entradas, além de ser semelhante ao fechamento de um soquete em um modelo cliente/servidor.

As filas de mensagens autenticam os aplicativos que tentam acessar a fila e permitem criptografar mensagens na rede e na própria fila. Para saber mais sobre a segurança de filas na AWS, leia nosso blog: Server-Side Encryption for Amazon Simple Queue Service (SQS). Você também pode obter mais informações sobre os recursos de segurança do Amazon SQS no guia do desenvolvedor.

Comece a usar gratuitamente executando apenas três comandos simples.

Comece a usar gratuitamente
blank