Neste tutorial, você aprenderá a configurar mensagens assíncronas com o Amazon Simple Queue Service (Amazon SQS). O Amazon SQS é o serviço da AWS que permite a comunicação de componentes do aplicativo na nuvem. Você usará o console do Amazon SQS para criar e configurar uma fila de mensagens, enviar uma mensagem, receber e excluir essa mensagem e excluir a fila.

Os serviços da AWS que você usa neste tutorial estão dentro do nível gratuito da AWS.

Usar mensagens na AWS requer uma conta

Criar uma conta gratuita

O nível gratuito da AWS inclui 1,000,000 de solicitações do Amazon Simple Queue Service.

Veja os detalhes do nível gratuito da AWS »

 


a. Quando você clicar aqui, o Console de Gerenciamento da AWS será exibido em uma nova janela do navegador para que você possa manter aberto este guia passo a passo. Após o carregamento da tela, insira seu nome do usuário e senha para começar. Digite queue na barra de pesquisa e selecione Simple Queue Service para abrir o console.

tmt_send-receive-async-messages_1a

(clique para ampliar)

tmt_send-receive-async-messages_1a

b. Se a página de entrada do console do SQS for exibida, como mostrada na screenshot, clique em Get Started Now. Se você não vir esta página, vá para a próxima etapa.

tmt_send-receive-async-messages_1b

(clique para ampliar)

tmt_send-receive-async-messages_1b

Nesta etapa, você irá criar e configurar uma fila do Amazon SQS. Uma fila é um buffer confiável e altamente escalável que armazena mensagens à medida que são transferidas entre aplicativos distribuídos ou microsserviços. Filas ajudam a desacoplar aplicativos, a conectar microsserviços, tarefas de lote ou a armazenar notificações.

Nosso caso de uso para este tutorial simulará o armazenamento de pedidos de entrada a partir de um aplicativo de comércio eletrônico.


a. Primeiro, criaremos uma fila simples que armazena pedidos feitos na loja. Insira Ordens no campo Queue Name .

tmt_send-receive-async-messages_2a

(clique para ampliar)

tmt_send-receive-async-messages_2a

b. Para este tutorial, não exigimos pedidos precisos, portanto não faremos alterações no tipo de fila. Mantenha Standard Queue selecionada.

tmt_send-receive-async-messages_2b

(clique para ampliar)

tmt_send-receive-async-messages_2b

c. Você pode configurar sua fila para modificar as configurações, como o período de retenção, tamanho máximo da mensagem e atrasos na entrega. Para este tutorial, vamos manter os parâmetros padrão. Escolha Quick-Create Queue.

tmt_send-receive-async-messages_2c

(clique para ampliar)

tmt_send-receive-async-messages_2c

d. Sua nova fila é criada e selecionada na lista de filas.

tmt_send-receive-async-messages_2d

(clique para ampliar)

tmt_send-receive-async-messages_2d

Uma vez criada a fila, ele está pronto para receber mensagens da loja on-line que capturam os detalhes de cada novo pedido.


a. Sua fila já está selecionada na lista. Em Queue Actions, selecione Send a Message. A caixa de diálogo Send a Message to Orders é exibida.

tmt_send-receive-async-messages_3a

(clique para ampliar)

tmt_send-receive-async-messages_3a

b. A caixa de diálogo Send a Message to Orders é exibida. Na guia Corpo da Mensagem, insira o seguinte texto para representar um exemplo de pedido:

1 x Widget @ $29.99 USD
2 x Widget Cables @ $4.99

tmt_send-receive-async-messages_3b

(clique para ampliar)

tmt_send-receive-async-messages_3b

c. Selecione a guia Message Attributes para adicionar alguns metadados sobre essa mensagem para facilitar o processamento. Vamos adicionar um tipo de pedido para o pedido. Insira Order-Type no campo Name, String no campo Type e Online no campo Value. Clique em Add Attribute.

tmt_send-receive-async-messages_3c

(clique para ampliar)

tmt_send-receive-async-messages_3c

d. Para enviar a mensagem imediatamente, clique em Send Message. A confirmação de que sua mensagem foi enviada é exibida na caixa de diálogo Send a Message to Orders. Clique em Close.

tmt_send-receive-async-messages_3d

(clique para ampliar)

tmt_send-receive-async-messages_3d

Depois de enviar uma mensagem para uma fila, outro aplicativo pode consumi-la na fila e fazer algo com ela. Neste exemplo, você simplesmente recuperará a mensagem para visualizar o pedido e, em seguida, a excluirá.


a. Certifique-se de que a fila de pedidos está selecionada na lista de filas. Em seguida, a partir das Queue Actions, selecione View/Delete Messages.

tmt_send-receive-async-messages_4a

(clique para ampliar)

tmt_send-receive-async-messages_4a

b. A caixa de diálogo View/Delete Messages in Orders é exibida. Quando você solicita uma mensagem de uma fila, não especifica solicitação de uma mensagem específica. Em vez disso, você especifica o número máximo de mensagens (até 10) que deseja recuperar.

Clique em Start Polling for messages para recuperar mensagens da fila.

tmt_send-receive-async-messages_4b

(clique para ampliar)

tmt_send-receive-async-messages_4b

c. Assim que um consumidor tiver recebido e processado uma mensagem, ela pode ser excluída da fila. Selecione a mensagem que você deseja excluir e, em seguida, escolha Delete 1 Message.

tmt_send-receive-async-messages_4c

(clique para ampliar)

tmt_send-receive-async-messages_4c

d. A caixa de diálogo Delete Messages será exibida. Marque a caixa de seleção ao lado da mensagem e clique em Yes, Delete Checked Messages. A mensagem selecionada será excluída. Escolha Close.

tmt_send-receive-async-messages_4d

(clique para ampliar)

tmt_send-receive-async-messages_4d

Quando você não precisar mais usar uma fila do Amazon SQS, recomendamos que exclua a fila como uma prática recomendada.


a. Na lista de fila, selecione a fila de Orders . Em seguida, a partir de Queue Actions, selecione Delete Queue.

tmt_send-receive-async-messages_5a

(clique para ampliar)

tmt_send-receive-async-messages_5a

b. A caixa de diálogo Delete Queues será exibida. Você ainda pode excluir a fila, mesmo que ainda tenha mensagens nela. Escolha Yes, Delete Queue. A fila é excluída.

tmt_send-receive-async-messages_5b

(clique para ampliar)

tmt_send-receive-async-messages_5b

Você criou a sua primeira fila de mensagens com o Amazon Simple Queue Service (Amazon SQS), enviou mensagens para a fila, recuperou e excluiu mensagens e, em seguida, excluiu a fila. Agora você está pronto para usar filas do Amazon SQS para armazenar e mover dados entre componentes de aplicativos distribuídos e microsserviços.

Agora que você aprendeu como usar o Amazon Simple Queue Service para enviar e receber mensagens, selecione uma das seguintes opções para aprimorar ainda mais as suas habilidades de mensagens.

Saiba mais

Obtenha uma visão geral dos recursos, componentes e casos de uso para filas de mensagens na Amazon Web Services (AWS). Acesse a página web do Amazon SQS »

Conheça mais

Explore os diferentes tipos de filas, os principais recursos e a arquitetura do Amazon Simple Queue Service. Leia a documentação »

Veja-o em ação

Ouça como clientes como a Capital One usam o Amazon SQS e o Amazon SNS para desacoplar e escalar aplicativos. Assista ao webinar »

Sim
Não