Amazon Simple Queue Service
Guia do desenvolvedor

O que é o Amazon Simple Queue Service?

O Amazon Simple Queue Service (Amazon SQS) oferece uma fila hospedada segura, durável e disponível que permite integrar e desassociar sistemas de software e componentes distribuídos. O Amazon SQS oferece constructos comuns, como dead letter queues e tags de alocação de custos. Ele fornece uma API de web services genérica e pode ser acessado por qualquer linguagem de programação compatível com o SDK da AWS.

O Amazon SQS oferece suporte a filas padrão e FIFO. Para obter mais informações, consulte De que tipo de fila eu preciso?

Quais são os principais benefícios do Amazon SQS?

  • SegurançaVocê controla quem pode enviar e receber mensagens em uma fila do Amazon SQS.

    O Criptografia do lado do servidor (SSE) permite transmitir dados confidenciais protegendo o conteúdo das mensagens nas filas usando chaves gerenciadas no AWS Key Management Service (AWS KMS).

  • Durabilidade – Para garantir a segurança de suas mensagens, o Amazon SQS as armazena em vários servidores. As filas Padrão oferecem suporte à entrega de mensagens pelo menos uma vez, e as filas FIFO oferecem suporte ao processamento de mensagens exatamente uma vez.

  • Disponibilidade o – Amazon SQS usa infraestrutura redundante para fornecer acesso altamente simultâneo às mensagens, e alta disponibilidade para produzir e consumir mensagens.

  • Escalabilidade – Amazon SQS pode processar cada solicitação em buffer de forma independente, escalando de forma transparente para lidar com qualquer aumento ou pico de carga sem nenhuma instrução de provisionamento.

  • Confiabilidade o – Amazon SQS bloqueia suas mensagens durante o processamento, de forma que vários produtores podem enviar e vários consumidores podem receber mensagens ao mesmo tempo.

  • Personalização – suas filas não precisam ser exatamente iguais —, por exemplo, você pode definir um atraso padrão em uma fila. Você pode armazenar o conteúdo de mensagens maiores que 256 KB usando o Amazon Simple Storage Service (Amazon S3) ou o Amazon DynamoDB, com o Amazon SQS mantendo um ponteiro no objeto do Amazon S3, ou pode dividir uma mensagem grande em mensagens menores.

Como o Amazon SQS é diferente do Amazon MQ ou do Amazon SNS?

O Amazon SQS e o Amazon SNS são serviços de filas e de tópicos altamente escaláveis, simples de usar e não exigem a configuração de agentes de mensagens. Recomendamos esses serviços para novos aplicativos que podem se beneficiar de uma escalabilidade praticamente ilimitada e de APIs simples.

O Amazon MQ é um serviço gerenciado de agente de mensagens que fornece compatibilidade com muitos operadores de mensagens populares. Recomendamos o Amazon MQ para migrar aplicativos de agentes de mensagens existentes que dependem da compatibilidade com APIs, como o JMS, ou de protocolos, como o AMQP, o MQTT, o OpenWire e o STOMP.

De que tipo de fila eu preciso?

Fila Padrão Fila FIFO

Taxa de transferência ilimitada – As filas Padrão oferecem suporte a um número quase ilimitado de transações por segundo (TPS) por ação de API (SendMessage, ReceiveMessage ou DeleteMessage).

Entrega pelo menos uma vez – uma mensagem é entregue pelo menos uma vez, mas às vezes mais de uma cópia da mensagem é entregue.

Melhor ordenação possível – às vezes, as mensagens podem ser entregues em uma ordem diferente da qual elas foram enviadas.

Alta taxa de transferência – Por padrão, as filas FIFO com agrupamento em lote oferecem suporte a até 3.000 mensagens por segundo (TPS), por ação de API (SendMessage, ReceiveMessage ou DeleteMessage). Para solicitar um aumento de limite, envie uma solicitação de suporte. Sem o agrupamento em lote, as filas FIFO oferecem suporte a até 300 mensagens por segundo, por ação de API (SendMessage, ReceiveMessage, ou DeleteMessage).

Processamento exatamente uma vez – uma mensagem é entregue uma vez e permanece disponível até que um consumidor a processe e exclua. As duplicações não são introduzidas na fila.

Entrega FIFO –a ordem em que as mensagens são enviadas e recebidas é preservada estritamente.

Enviar dados entre aplicativos quando a taxa de transferência for importante, por exemplo:

  • Desacoplar solicitações de usuário em tempo real do intenso trabalho em segundo plano: permite que os usuários façam upload de mídia enquanto a redimensionam ou a codificam.

  • Alocar tarefas para vários nós operadores: processa um número elevado de solicitações de validação de cartão de crédito.

  • Organizar as mensagens em lote para processamento futuro: programa várias entradas para adicioná-las ao banco de dados.

Enviar dados entre aplicativos quando a ordem dos eventos for importante, por exemplo:

  • Verificar se os comandos inseridos pelo usuário são executados na ordem correta.

  • Exibir o preço do produto correto enviando modificações de preço na ordem correta.

  • Impedir que um aluno se inscreva em um curso antes de criar uma conta.

Como posso começar a usar o Amazon SQS?

Deixe seu comentário

Os seus comentários são bem-vindos. Para entrar em contato conosco, visite o Fórum de discussão do Amazon SQS.