queue-advisor-pricing-app
Compare custo e encaixe de SQS, Kinesis, EventBridge e MSK antes de decidir
git clone https://github.com/fernando-moretes/app-queue-advisor-pricing.gitcerca de 4 min · áudio gerado ao tocar
O QueueAdvisor é uma calculadora interativa, em Next.js e TypeScript, que compara custo e adequação de SQS, Kinesis, EventBridge e MSK a partir do seu throughput e da sua retenção.
Por que este repositório existe
Em revisão de arquitetura, a pergunta errada é "qual serviço de mensageria é o melhor?". A pergunta útil é outra: com este volume, esta retenção e este padrão de consumo, quanto cada opção custa por mês e quanto custa mantê-la de pé?
Os quatro serviços cobram por dimensões diferentes, e é isso que torna a comparação de cabeça pouco confiável:
- SQS: cobra por requisição.
- Kinesis Data Streams: cobra por capacidade de shard (ou pelo modo on-demand) e por retenção estendida.
- EventBridge: cobra por evento publicado no barramento.
- MSK: cobra por broker-hora e por armazenamento, ligado ou não.
Com unidades de cobrança tão diferentes, a planilha feita às pressas na véspera da decisão costuma comparar coisas que não se comparam. Escrevi o QueueAdvisor para colocar os quatro lado a lado, com as mesmas entradas, e deixar a diferença visível antes de alguém abrir um ticket de provisionamento.
O público é quem toma decisão de mensageria: arquitetos de solução, engenheiros de plataforma e quem responde pela fatura de FinOps.
O que a ferramenta faz
Como a ferramenta funciona
Fluxo de uso da calculadora. É uma aplicação de frontend: a estimativa é feita no próprio app, sem chamada a APIs da AWS.
- Next.js UI · Tailwind CSS
- Entradas / Inputs · throughput + retenção
- Modelo de custo · TypeScript
- SQS · por requisição
- Kinesis · por shard
- EventBridge · por evento
- MSK · por broker-hora
- Orientação · encaixe recomendado
Instalar e rodar localmente
- 1
Use a versão publicada, se só quer o número
Abra
https://queue.moretes.com. Não há nada para instalar. - 2
Clone o repositório
git clone https://github.com/fernando-moretes/app-queue-advisor-pricing.gite depoiscd app-queue-advisor-pricing. O README ainda mostra a URL antiga emfernandofatech/queue-advisor-pricing-app: o repositório migrou para a orgfernando-moretes, e a URL nova é a que vale. - 3
Instale as dependências
Rode
pnpm install. O projeto usa pnpm; misturar comnpm installgera um segundo lockfile e instalações que não batem com o que foi testado. - 4
Suba o servidor de desenvolvimento
Rode
pnpm deve abra o endereço que o Next.js imprimir no terminal, normalmentehttp://localhost:3000. - 5
Informe o perfil da carga
Preencha throughput e retenção com números medidos, não estimados no olho. Compare as quatro opções e leia a orientação junto com o custo.
git clone https://github.com/fernando-moretes/app-queue-advisor-pricing.git
cd app-queue-advisor-pricing
pnpm install
pnpm devComo ler o resultado
A calculadora devolve um número por serviço, mas o número sozinho engana. Três coisas que aprendi a olhar antes de aceitar o mais barato:
Custo fixo contra custo variável: SQS e EventBridge cobram por uso, então tráfego zero custa perto de zero. MSK cobra broker-hora mesmo parado. Em carga baixa ou intermitente, essa diferença domina a fatura; em carga alta e constante, ela se inverte.
Retenção não é detalhe: SQS guarda mensagem por no máximo 14 dias. Kinesis guarda 24 horas por padrão e pode ir até 365 dias, pagando a retenção estendida. Se o requisito é reprocessar o histórico, a opção barata pode simplesmente não atender.
Semântica de consumo: fila com um consumidor por mensagem, stream com vários consumidores lendo a mesma ordem, e barramento com roteamento por regra são modelos diferentes. Trocar um pelo outro para economizar costuma voltar como retrabalho de idempotência e ordenação.
A ferramenta põe o custo na mesa. A decisão continua sendo sua, e depende de quem vai operar isso quando o consumidor atrasar.
Estimativa não é fatura
Preço da AWS muda e varia por região. Use o resultado para comparar ordens de grandeza entre os serviços; antes de aprovar orçamento, confira o número final no AWS Pricing Calculator e nas páginas oficiais de preço de cada serviço.
Stack e estado do projeto
O app é Next.js com TypeScript e Tailwind CSS, publicado na Vercel sob queue.moretes.com. Não há backend próprio nem credencial AWS envolvida: a ferramenta não lê sua conta, não chama Cost Explorer e não precisa de permissão IAM nenhuma. Isso foi escolha, não limitação. Uma calculadora que pede acesso à conta vira item de revisão de segurança, e o objetivo aqui é responder uma pergunta de arquitetura em minutos.
Sobre maturidade, sendo direto: o roadmap do README lista refatorações, ampliação de testes e melhoria de documentação como itens abertos. Trate o projeto como ferramenta de apoio à decisão, não como fonte oficial de preço.
Contribuições são bem-vindas. Para mudança grande, abra uma issue antes do pull request, especialmente se envolver o modelo de custo: uma fórmula errada ali não quebra o build, ela só devolve um número plausível e errado, que é a falha mais difícil de perceber.
Perguntas frequentes
Preciso de conta AWS para usar?
Não. A ferramenta roda no navegador e não acessa nenhuma conta.
Quais serviços entram na comparação?
SQS, Kinesis, EventBridge e MSK, os quatro citados no README.
Posso usar o número para aprovar orçamento?
Use para escolher entre as opções. Para o orçamento, confirme na página oficial de preço da região que você vai usar.
Qual a licença?
MIT. Veja o arquivo LICENSE no repositório.
Para quem é
Use o QueueAdvisor quando você precisa escolher entre SQS, Kinesis, EventBridge e MSK, já tem throughput e retenção medidos e quer ver a diferença de custo antes da reunião de arquitetura. Não use como substituto do AWS Pricing Calculator na hora de fechar orçamento, nem como resposta final quando o requisito de ordenação ou de replay já elimina metade das opções: aí a decisão é de semântica, não de preço.
Deep dives de arquitetura, AWS, IA e mercado: direto no seu email. Grátis.
Sem spam · cancele quando quiser