Entendendo os módulos de análise
Os módulos do Architecto avaliam dimensões críticas antes da implantação: custos, escalabilidade, segurança, desempenho e conformidade.
Visão geral
Pense neles como uma revisão por especialistas:
- Auditor financeiro → Estimador de custos.
- Engenheiro de desempenho → Analisador de escalabilidade e simulador.
- Arquiteto de segurança → Modelador de ameaças e postura de segurança.
- Líder de operações → Detector de desvios.
- Responsável por conformidade → Verificador de conformidade.
Juntos, ajudam a ter confiança na prontidão para produção.
Estimador de custos
Pergunta: “Quanto vai custar?”.
Modela a conta mensal de nuvem em várias escalas.
Como funciona
- Informe arquitetura e escala, de 1k a 1M usuários.
- O Architecto calcula computação, armazenamento, banco e transferência.
- Modela como o custo muda com a escala.
- Identifica pontos de inflexão com aumentos bruscos.
- Sugere estratégias de otimização.
Curvas de custo
O custo costuma seguir padrões:
Cost
^
| /
| /
| /
| /_____ Cost knee
| /
|/
+-----> UsersO ponto de inflexão do custo indica onde a arquitetura fica financeiramente insustentável. Exemplo:
- 10k usuários: $200/mês ✓ Saudável.
- 50k usuários: $500/mês ✓ Ainda viável.
- 100k usuários: $2,000/mês ⚠️ Inflexão.
- 200k usuários: $5,000/mês ✗ Insustentável.
Estratégias de redução
Sugestões comuns:
| Estratégia | Exemplo | Impacto |
|---|---|---|
| Reservas | Compromisso EC2 de 1 ano | Economia de 20-40% |
| Cache | Redis para dados frequentes | Redução de 30-50% no banco |
| Escala automática | Reduzir à noite | Economia de computação de 10-20% |
| Transferência | CDN para estáticos | Economia de transferência de 20-40% |
| Otimização do banco | Réplicas RDS e pool | 15-30% dos custos do banco |
| Spot | Cargas não críticas | Economia de computação de 70% |
Analisador de escalabilidade
Pergunta: “Quantos usuários suporta? Onde está o gargalo?”.
Usa teoria das filas e modelos de estresse para prever o comportamento sob carga.
Métricas principais
| Métrica | Definição | Exemplo |
|---|---|---|
| Capacidade de processamento | Requisições por segundo suportadas | 5,000 req/s |
| Latência | Tempo médio de resposta | 200ms |
| Gargalo | Componente que limita a capacidade | Banco primário RDS |
| Limite de escala | Máximo antes de perder qualidade | 100,000 simultâneos |
Identificar gargalos
Componentes atingem limites em escalas diferentes:
10k users: API Server (add more servers)
50k users: Database (add read replicas, caching)
100k users: Network bandwidth (add CDN, optimize queries)
1M users: Distributed systems complexity (redesign for microservices)O analisador identifica exatamente qual componente vira a restrição.
Recomendações
Após identificar gargalos:
-
Réplicas de leitura de banco.
- Leitura nas réplicas e escrita no primário.
- Capacidade de leitura cresce linearmente.
- Normalmente 3-5 réplicas atendem 20-50k usuários.
-
Escala horizontal dos servidores.
- Mais instâncias atrás do balanceador.
- Normalmente 500-2,000 usuários simultâneos por instância.
-
Cache Redis/Memcached.
- Guarda dados frequentes.
- Reduz a carga do banco em 50-80%.
- Costuma suportar 10-100x mais tráfego.
-
Particionamento de banco.
- Divide por usuário, região ou data.
- Cada partição recebe um subconjunto.
- Permite milhões de usuários.
-
Pool de conexões do banco.
- Reutiliza conexões.
- Reduz a sobrecarga.
- Melhora típica de processamento de 2-3x.
Modelador de ameaças
Pergunta: “O que pode dar errado? Como evitar ataques?”.
Usa STRIDE para identificar ameaças e sugerir mitigações.
Estrutura STRIDE
| Ameaça | Definição | Exemplo |
|---|---|---|
| Falsificação de identidade | Fingir ser outra pessoa | Login falso e chamadas API forjadas |
| Adulteração | Mudar dados em trânsito ou repouso | Intermediário malicioso e corrupção do banco |
| Repúdio | Negar uma ação realizada | Negar exclusão ou transferência |
| Divulgação de informações | Ler dados sem permissão | Chaves expostas e vazamento de clientes |
| Negação de serviço | Impedir o acesso legítimo | DDoS e esgotamento de recursos |
| Elevação de privilégio | Obter acesso acima do permitido | Injeção SQL para ler tudo e escalada de privilégios |
Exemplo de análise
Para comércio eletrônico:
Falsificação:
- O invasor assume a identidade de outro usuário.
- Acessa pedidos e pagamentos.
- Mitigação: MFA, OAuth 2.0 e tokens de sessão.
Adulteração:
- O invasor altera o preço durante a compra.
- Troca um pedido de $100 para $1.
- Mitigação: assinaturas criptográficas, validação no servidor e comunicação criptografada.
Divulgação:
- O invasor lê um backup.
- Rouba cartões e dados pessoais.
- Mitigação: criptografia em repouso com AWS KMS, backups criptografados e controle de acesso.
Negação de serviço:
- O invasor inunda a API.
- Usuários legítimos recebem HTTP 503.
- Mitigação: limites de requisições, CloudFront contra DDoS, WAF e escala automática.
Boas práticas de segurança
O Architecto recomenda:
- Autenticação: MFA, OAuth 2.0 e chaves de acesso.
- Criptografia: TLS 1.3 em trânsito e AES-256 em repouso.
- Autorização: IAM de privilégio mínimo e acesso por função.
- Rede: VPC, grupos de segurança e NACLs.
- Dados: tokenização de dados pessoais e mascaramento nos logs.
- Monitoramento: CloudTrail para auditoria e CloudWatch para anomalias.
Comparação de arquiteturas
Pergunta: “O que mudou e qual é o impacto?”.
Mostra diferenças semânticas entre duas versões.
O que compara
- Adicionados: novos serviços e bancos.
- Removidos: serviços aposentados.
- Modificados: instância, escala e outras configurações.
- Conexões: fluxos adicionados ou removidos.
Exemplo
Version 1:
- Single RDS database (no replicas)
- Single EC2 instance
- No caching layer
- Direct database access from app
Version 2:
+ Added 2 RDS read replicas
+ Added autoscaling group (3-10 instances)
+ Added Redis cache layer
+ Added connection pooling
~ Changed database instance type (t3.medium → r5.large)Análise de impacto
Explica os efeitos:
- Custos: +$500/mês para réplicas e cache.
- Escalabilidade: +400%, suporta 5x mais usuários.
- Disponibilidade: +99.9%, com failover Multi-AZ.
- Complexidade: média, por gerenciar cache e réplicas.
Simulador de desempenho
Pergunta: “Como latência e processamento se comportam sob carga?”.
(Em breve: simulação completa com modelagem de latência.)
Prevê o comportamento de cada componente sob diferentes cargas.
Verificador de conformidade
Pergunta: “Atende aos requisitos?”.
(Em breve: validação SOC2, HIPAA, PCI DSS e GDPR.)
Valida a arquitetura pelos padrões.
Detector de desvios
Pergunta: “A infraestrutura se afastou do design?”.
(Em breve: monitoramento contínuo de desvios de configuração.)
Executar análise completa
Revisão integrada
- Clique em Analisar tudo, em breve.
- O Architecto executa os módulos aplicáveis:
- Custos para 1k, 10k, 100k e 1M usuários.
- Gargalos de escalabilidade.
- Revisão STRIDE completa.
- Conformidade.
- Simulação de desempenho.
- Gera um relatório de revisão de arquitetura com:
- Resumo executivo e nota de 1-10.
- Constatações detalhadas.
- Problemas críticos.
- Próximos passos.
- Custo-benefício de cada recomendação.
Acompanhar ao longo do tempo
Salve várias execuções para acompanhar:
- Melhorias de arquitetura.
- Tendências de custos.
- Prontidão para escala.
- Evolução da segurança.
Próximos passos
- Crie a primeira arquitetura → Primeira arquitetura
- Aprenda boas práticas → Boas práticas
- Explore recursos → Guia de recursos
Ideia principal: os módulos são sua equipe de revisão de arquitetura. Use-os para detectar problemas cedo, otimizar custos e ganhar confiança antes da implantação.