202104061043 - Serverless Arquitetura
Artigo Solutions Architect Tips - Decoding the AWS Serverless Design Principles
#artigos
Arquitetura Serverless
Notas
- Simples e Rapido
- Sempre procurar minimizar tempo de execução.
- Usar SQS pra colocar tarefas que precisam de processamentos adicionais.
- Funções devem responder em milissegundos
- Requests concorrentes
- Não precisa diminuir o numero de requests.
- Quando possível, quebre funções grandes em menores. Transforma tempo de execução vários em processos mais baratos e rápidos.
- Orquestre sua aplicação com State Machines.
- Invocar lambdas dentro de lambdas resulta em um sistema monolítico e uma aplicação altamente acoplada.
- Evitar chamar um lambda de dentro de outro lambda.
- Invocar lambdas dentro de lambdas é um antipattern definido pela AWS. Fica bem mais caro, tem que pagar o tempo de execução dos dois lambdas, e mais lento.
- Pra resolver isso, pode usar step functions ou express workflow
- Use Eventos para responder as regras de negócio.
- Arquitetura Serverless são por natureza sistemas distribuídos.
- Software não precisa mais ser sincrono
- Planeje Erros e Duplicatas
- Assuma que o lambda vai falhar aleatoriamente.
- Seu codigo sempre deve considerar essas falhas e responder identicamente todas as vezes.
Use as Ferramentas como elas foram planejadas para serem usadas
Relacionados:
Serverless Aplication Lens
Single Responsability Principle