Na arquitetura de nuvem moderna, os aplicativos são dissociados em componentes essenciais independentes, que são mais fáceis de desenvolver, implantar e manter. As filas de mensagens disponibilizam recursos de comunicação e coordenação a esses aplicativos distribuídos.

As filas de mensagens podem simplificar bastante a codificação de aplicativos dissociados e aumentar o desempenho, a confiabilidade e a escalabilidade. Você também pode combinar filas de mensagens 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 »


As filas de mensagens permitem a comunicação assíncrona, o que significa que os endpoints que produzem e consomem mensagens interagem com a fila e não entre si. Os produtores podem adicionar solicitações à fila sem precisar esperar que elas sejam processadas. Os consumidores processam mensagens apenas quando elas estão disponíveis. Em nenhuma ocasião um componente no sistema fica paralisado esperando por outro fluxo de dados de otimização.

sqs_img_performance

As filas tornam os dados persistentes e reduzem os erros que ocorrem quando partes diferentes do sistema ficam offline. Com a separação de componentes diferentes em filas de mensagens, você aumenta a tolerância a falhas. Se alguma parte do sistema tornar-se inacessível, ainda será possível continuar a interagir com a fila. A própria fila também pode ser espelhada para uma disponibilidade ainda maior.

sqs_seo_reliability

As filas de mensagens possibilitam ajustar a escala precisamente onde for necessário. Quando as cargas de trabalho atingem picos, várias instâncias do aplicativo podem adicionar solicitações à fila sem riscos de colisão. Quando as filas começarem a aumentar por conta dessas solicitações de entrada, será possível distribuir a carga de trabalho por toda uma frota de consumidores. Os produtores, os consumidores e a própria fila podem aumentar e diminuir de acordo com a demanda.

sqs_seo_scalability

As filas de mensagens removem dependências entre componentes e simplificam bastante a codificação de aplicativos dissociados. Os componentes de software não são sobrecarregados pelo código de comunicação e podem ser projetados para executar uma função empresarial diferente.

As filas de mensagens são uma maneira elegante e simples de dissociar sistemas distribuídos como aplicativos monolíticos, microsserviços ou arquiteturas sem servidor.

sqs_seo_decouplling

Use as filas de mensagens para dissociar aplicativos monolíticos. Em vez de desempenhar várias funções em um único executável, vários programas podem trocar informações ao enviar mensagens entre processos, tornando-as mais fáceis de testar, depurar, desenvolver e ajustar a escala.

Os padrões de integração a microsserviços baseados em eventos e o sistema de mensagens assíncronas otimizam a escalabilidade e a resiliência. Use serviços de filas de mensagens para coordenar vários microsserviços, notificar microsserviços quanto a alterações de dados ou como canal de eventos para processar dados de IoT, de redes sociais e em tempo real.

Depois de criar microsserviços sem servidores, e fazer implantações em servidores ou instalações de software de qualquer tipo, será possível usar as filas de mensagens para disponibilizar notificações sem servidor confiáveis e escaláveis, comunicação entre processos, além de visibilidade sobre o PaaS e as funções sem servidor.

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

Comece a usar gratuitamente
blank