Diferenças entre AWS SNS, MQ e SQS
A AWS fornece uma variedade de serviços de mensagens, entre os quais o Amazon Simple Notification Service (SNS) e o Amazon Simple Queue Service (SQS) se destacam como escolhas populares. Apesar do seu potencial para utilização semelhante, estes serviços são fundamentalmente distintos.
Este artigo visa elucidar os paralelos e distinções entre SNS, SQS e MQ, auxiliando os leitores na tomada de decisões informadas sobre qual serviço melhor atende às suas necessidades.
Amazon Simple Queue Service (SNS)
O Amazon SNS é um serviço de publicação e assinatura que fornece entrega de mensagens de editores (também conhecidos como produtores) para vários endpoints de assinantes (também conhecidos como consumidores).
O SNS se diferencia em seus métodos de envio. É Aplicativo para Aplicativo (A2A) ou Aplicativo para Pessoa (A2P).
Amazon Simple Queue Service (SQS)
O Amazon SQS se destaca como um serviço de enfileiramento distribuído totalmente gerenciado, operando em um mecanismo baseado em pesquisa em vez de em um mecanismo baseado em push, apesar de às vezes aparecer. Frequentemente empregado para desacoplar sistemas e facilitar cargas de trabalho assíncronas, serve para desconectar componentes e promover operações eficientes.
O padrão principal do SQS envolve produtores enviando mensagens para uma fila, onde essas mensagens persistem por um período especificado, normalmente definido como 4 dias por padrão, com limite máximo de 14 dias.
Se um consumidor trabalhar em uma mensagem, a mensagem será excluída se for bem-sucedida. Caso contrário, também poderá ser adquirido por outros consumidores.
O SQS fornece recursos robustos de novas tentativas por meio de sua política de reencaminhamento. Esse recurso permite configurar diversas tentativas de repetição e designar uma fila de devoluções (DLQ) para lidar com mensagens com falha. As DLQs servem como um mecanismo para gerenciar mensagens que encontram erros; se uma mensagem não puder ser processada com êxito, ela será direcionada ao DLQ para notificar o desenvolvedor do aplicativo sobre o problema e, opcionalmente, armazenar a mensagem para reprodução na fila original.
Amazon Simple Queue Service (MQ)
O Amazon MQ é um serviço de agente de mensagens gerenciado que oferece compatibilidade com protocolos de mensagens padrão do setor, como Advanced Message Queuing Protocol (AMQP) e Message Queuing Telemetry Transport (MQTT). Atualmente, o Amazon MQ oferece suporte aos tipos de mecanismo Apache ActiveMQ e RabbitMQ.
O gráfico a seguir fornece uma visão geral do tipo de recurso de cada serviço:
Tipo de recurso | Amazon SNS | Amazon SQS | Amazon MQ |
---|---|---|---|
Síncrona | Não | Não | Sim |
Assíncrona | Sim | Sim | Sim |
Filas | Não | Sim | Sim |
Sistema de publicador e assinante de mensagens | Sim | Não | Sim |
Agente de mensagens | Não | Não | Sim |
Nenhum comentário:
Postar um comentário