Praticar de graça

⌨️aws sqs send-message

aws sqs send-message — comando da trilha de Amazon SQS.

Manual do comando

É o mesmo texto que aws sqs send-message help devolve dentro do CLImb.

aws sqs send-message

USO
    aws sqs send-message --queue-url <url> --message-body "pedido 1001"

Coloca uma mensagem na fila. Devolve o MessageId.

Onde você pratica isto (13 atividades)

Cada uma é um pedido de trabalho real; você resolve digitando o comando, e o estado fica salvo pro exercício seguinte.

Mande um pedido pra fila

Envie a mensagem pedido 1001 pra fila. A fila é identificada pela URL (não pelo nome!).

O pedido da marmita entra na fila

A cozinha do restaurante lê a fila pra saber o que preparar. Crie a fila pedidos-marmita e mande o primeiro pedido: marmita 42.

Três vídeos esperando conversão

Converter vídeo é lento, então o site só joga o trabalho na fila e responde na hora. Crie uploads-video e enfileire os três uploads do dia: video-1, video-2 e video-3.

Mil mensagens, mil requisições — e a conta chega

O time subiu um importador que manda uma mensagem por linha da planilha, uma requisição cada. A SQS cobra por requisição, não por mensagem — de 10 em 10 custa um décimo. Crie importacao-planilha e mande as três primeiras linhas num lote só: linha-1, linha-2 e linha-3.

O disparo da newsletter

A newsletter de sexta vai pra dois segmentos, e cada envio é uma mensagem. Crie newsletter-envios e mande segmento-ativos e segmento-inativos num único lote.

O relatório da noite não saiu

Os relatórios noturnos não chegaram e ninguém sabe se o problema foi o gerador ou a entrada. Crie relatorios-noturnos, enfileire fechamento-caixa e ranking-vendas e olhe quantas mensagens estão paradas — é esse número que diz se o trabalho está chegando e não sendo consumido.

A impressora puxa o próximo trabalho

No laboratório, cada impressora 3D pega uma peça por vez da fila. Crie tarefas-impressao, enfileire a peça suporte-camera e puxe a tarefa como a impressora faria.

O relatório demorou mais que o previsto

Seu worker pegou um relatório gigante e vai passar do prazo da fila — se não esticar, a mensagem reaparece e outro worker gera o mesmo relatório de novo. Crie relatorios-pesados, mande fechamento-anual, puxe a mensagem e estique o prazo dela pra 600 segundos.

Confirme o lote inteiro numa requisição

Seu worker processa notificações de 10 em 10, mas confirma uma por uma — e são 10 requisições cobradas pra cada lote de trabalho. Crie notificacoes-push, mande push-1 e push-2 em lote, puxe as duas de uma vez e confirme as duas numa requisição só.

A fila de conversão inteira vai demorar

A máquina de conversão está lenta hoje e as duas imagens em processamento vão estourar o prazo — as duas, não uma. Crie conversao-imagens, mande foto-1 e foto-2 em lote, puxe as duas e estique o prazo das duas pra 300 segundos numa requisição.

Bug corrigido: devolva as mensagens

O deploy saiu, o parser foi corrigido e as mensagens paradas na pedidos-dlq agora seriam processadas sem erro. Em vez de escrever um script que lê de uma fila e escreve na outra, peça pra própria SQS devolver. Mande duas mensagens pra DLQ (pedido-quebrado-1 e pedido-quebrado-2) e inicie a devolução.

Pedido que não se perde (SQS + SNS)

O checkout da loja está perdendo pedido quando o processador cai. A saída é desacoplar: o site joga o pedido numa fila e vai embora; quem processa lê no ritmo dele. Crie a fila chamados-fila, o tópico chamados-avisos pra avisar o time, coloque um pedido na fila e confira que ele está lá. <small>(a fila segura o pedido mesmo com o processador desligado — é isso que evita a perda)</small>

O teste de carga sujou a fila

Alguém apontou o teste de carga pra fila errada e deixou lixo lá dentro. Crie testes-carga, enfileire lote-a e lote-b e limpe tudo de uma vez. <small>(em produção pense duas vezes: o purge descarta mensagem boa junto)</small>

Outros comandos com página própria

Ler a sintaxe explica. Digitar fixa. No CLImb você roda aws sqs send-message num terminal AWS simulado e vê a saída — inclusive a mensagem de erro, quando erra a flag.

Praticar no terminal
Todas as lições · Praticar no terminal · Sobre