SlideShare uma empresa Scribd logo
2016, Amazon Web Services, Inc. ou Afiliadas. Todos os direitos reservados.
Renato Barbosa, Arquiteto de Soluções, AWS
30 de Novembro de 2016
Conceitos básicos das
arquiteturas Serverless
Pauta
Histórico
AWS Lambda
Amazon API Gateway
Demonstração
Padrões de arquitetura sem servidor
Melhores práticas sem servidor
Histórico
Como os padrões de arquitetura Serverless com o AWS Lambda são a
próxima evolução do design de aplicativos
A arquitetura monolítica
A arquitetura orientada a serviços
Camada de apresentação Camada lógica
Nível de dados
A arquitetura de microsserviços
Ferramentas para ajudar esse padrão são VASTAS
Servidores da Web
Bibliotecas de código
Estrutura de web services/aplicativo
Ferramentas de gerenciamento de
configuração
Plataformas de gerenciamento de API
Padrões de implantação
Padrões de CI/CD
Contêineres
Etc. Etc. Etc.
A AWS ajudou também!
Amazon EC2
EC2 Auto-Scaling
AWS Elastic Load Balancer
EC2 Auto-Recovery
AWS Trusted Advisor
AWS Elastic Beanstalk
AWS OpsWorks
AWS EC2 Container Service
Etc. Etc. Etc.
Mas….
Várias dessas ferramentas
e inovações ainda estão
aliadas a muitas
dependências...
Servidores (AAHHHHHHHHH!!)
Qual tamanho de servidor
é adequado para o meu
orçamento?
Quantos usuários criam excesso
carga para os meus servidores?
Qual capacidade disponível têm
meus servidores?
Como posso detectar se um
servidor ficou comprometido?
Quantos servidores
devo orçar?
Qual SO meus servidores
devem executar?
Quais usuários deveriam ter
acesso aos meus servidores?
Como posso controlar o acesso
dos meus servidores?
Como eu manterei os
os patches do SO do meu
servidor?
Como o novo código será
implantado nos meus
servidores?
Como poderei aumentar
a utilização dos meus
servidores?
Quando devo decidir
escalonar meus servidores?
Que tamanho de servidor
é adequado para o meu
desempenho?
Devo ajustar as configurações de
SO para otimizar meu aplicativo?
Quais pacotes devem ser "baked"
nas minhas imagens do servidor?
Quando devo decidir
escalonar meus servidores?
Como devo lidar com alterações na
configuração do servidor?
Como o aplicativo lidará com falha
de hardware do servidor?
Arquitetar para ser Serverless
Totalmente gerenciado
• Sem provisionamento
• Administração zero
• Alta disponibilidade
Produtividade do desenvolvedor
• Foco no código que importa
• Inovação rápida
• Redução do time-to-market
Escalabilidade contínua
• Automaticamente
• Escalabilidade para mais
ou menos
AWS Lambda
Serviço de computação Serverless, orientado por evento
Lambda = microsserviço sem servidor
Componentes do Lambda
• Uma função do Lambda (código)
• Uma fonte de evento
• O serviço do AWS Lambda
• O ambiente de rede de execução
A função do Lambda
• Seu código
(Java, NodeJS, Python)
• O IAM role que o código
assume durante
a execução
• A quantidade de memória
alocada para seu código
(afeta CPU e rede também)
Uma função do Lambda
válida e completa
Uma fonte de evento
• Quando sua função deve
ser executada?
• Muitos serviços da AWS
podem ser uma fonte de
evento:
• S3
• Kinesis
• SNS
• DynamoDB
• CloudWatch
• Config Rules
• Amazon Echo
• Etc.
• …e o Amazon API
Gateway
O serviço do AWS Lambda
• Executa seu código de função sem você gerenciar ou
escalonar servidores.
• Fornece API para chamar a execução da sua função.
• Garante que a função seja executada quando chamada,
em paralelo, independentemente de escala.
• Fornece outros recursos para sua função (logs,
monitoramento).
O ambiente de rede de funções
Default – é fornecido a execução
da função no ambiente de uma
VPC padrão.
• Acesso à internet sempre permitido
para sua função
• Sem acesso a ativos implementados
na VPC
VPC do cliente – Sua função
é executada dentro do contexto da sua
própria VPC.
• Comunique-se privadamente com
outros recursos dentro da VPC.
• Configuração e comportamento
conhecidos com:
– Sub-redes
– Elastic Network Interfaces (ENIs)
– Security Groups do EC2
– Tabelas de rotas (Route Tables)
da VPC
– NAT Gateway
“Espere…” – você (talvez)
Muitas das formas existentes de abstrair servidores
SaaS
PaaS
MBaaS
*aaS
Mecanismos/plataformas de aplicativos
O que é único em relação ao Lambda?
Abstração do nível de código/função (flexível, familiar)
O modelo de segurança (IAM, VPC)
O modelo de preço
A comunidade
Integração com o ecossistema de serviços da AWS!
• Escala
• Triggers
Várias opções sem servidor na AWS
Armazenamento Banco de dadosRede
Computação Entrega de conteúdoSistemas de mensagens e filasSegurança
Gateways
Gerenciamento de usuários Monitoramento e registro
Internet das Coisas
Machine Learning
Analytcs do streaming
Exemplo de arquitetura
Serverless
PlayOn! Sports – processamento de streaming
de vídeo
Codifica-
dores de
laptop
HLS
Reproduzir
S3
Cliente móvel
do VOD
Stream
Streaming do
CloudFront
Streaming em
tempo real do
cliente móvel
CloudFront S3 Ingest
Transcodi-
ficar 480p
Copiar HQ
Transcodi-
ficar 360p
Transcodifica-
ção somente
do áudio
Miniatura
Análise de
QOS
Funções do Lambda em cascata
http://www.slideshare.net/AmazonWebServices/arc308-the-serverless-company-using-aws-lambda
“Mas…
Para usar o Lambda, preciso mesmo
arquiteturar aplicativos orientados
para eventos?” – você (talvez)
O SOA ainda funciona.
Amazon API Gateway
Um serviço totalmente gerenciado para suas APIs
Crie Configure Publique
Mantenha Monitore Proteja
Demonstração
Função do
AWS Lambda
navegador da web
Amazon S3
Conteúdo dinâmico
Website sem servidor
Amazon API
Gateway
Conteúdo estático
Amazon
DynamoDB
Padrões de arquitetura Serverless
Microsserviços
Back-end móvel
Mecanismo de análise em tempo real
Melhores práticas Serverless
Melhores práticas do AWS Lambda
1. Limite o tamanho da sua
função – especialmente para
Java (iniciar o JVM leva
tempo)
2. Nó – lembre-se de que
a execução é assíncrona.
3. Não pressuponha reutilização
do contêiner da função – mas
aproveite quando isso
ocorrer.
4. Não se esqueça do disco
(diretório /tmp de 500 MB
fornecido a cada função)
5. Use apelidos ("Aliases") da
função para liberação.
6. Use o logger incluído (inclua
detalhes do contexto
fornecido pelo serviço)
7. Crie métricas personalizadas
(centradas em operações
e em negócios)
Melhores práticas do Amazon API Gateway
4. Use modelos de mapeamento
de solicitação/resposta em
todos os lugares dentro da
razão, não passagem.
5. Assuma propriedade dos
códigos de resposta de HTTP
6. Use importar/exportar
Swagger para
compartilhamento entre
contas
1. Use Mock Integrations
2. Combine com Cognito para
controle de acesso baseado
em usuário final.
3. Use variáveis de estágio
(injete valores do config da
API nas funções do Lambda
para registro,
comportamento)
Melhores práticas adicionais
1. Use convenções de nomes
estratégicos e consumíveis
(nomes da função do
Lambda, funções de IAM,
nomes da API, nomes do
estágio da API, etc.)
2. Use convenções de nome
e versionamento para criar
automação.
3. Externalize autorização para
funções de IAM sempre que
possível
4. Privilégio mínimo e funções de
IAM separadas
5. Externalize a configuração –
o DynamoDB é ótimo para isso.
6. Entre em contato com suporte
da AWS em case de grandes
eventos de escalabilidades
conhecidos
7. Tenha ciência de
estrangulamento de serviço,
fale com o suporte da AWS em
caso positivo.
Call-to-action
Vá construir algo!
Amazon API
Gateway
AWS Lambda Amazon
DynamoDB
Obrigado!

Mais conteúdo relacionado

PPTX
Construindo APIs com Amazon API Gateway e AWS Lambda
PDF
Construindo APIs com Amazon API Gateway e AWS Lambda
PDF
Arquitetura Serverless e AWS Lambda - Demo Session
PPTX
Construindo seu Data Lake na AWS
PPTX
Migrando seu workload de Big Data para o Amazon EMR
PPTX
Tendências de Big Data
PDF
Melhores práticas de workloads Microsoft na AWS
PPTX
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS Lambda
Arquitetura Serverless e AWS Lambda - Demo Session
Construindo seu Data Lake na AWS
Migrando seu workload de Big Data para o Amazon EMR
Tendências de Big Data
Melhores práticas de workloads Microsoft na AWS
Construindo APIs com Amazon API Gateway e AWS Lambda

Mais procurados (20)

PPTX
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...
PPTX
Como construir sua primeira aplicação de Big Data na AWS
PDF
Explorando o poder do banco de dados com Amazon Aurora
PDF
Building blocks #5 - Recuperação de desastres de maneira prática na AWS
PDF
Seu primeiro aplicativo de Big Data
PPTX
Deep dive com Amazon Aurora
PDF
Utilizando NoSQL para Big Data com DynamoDB
PDF
Fazendo seu DR na AWS de maneira prática
PDF
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
PDF
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
PDF
Blue Green Deployments com Elastic Beanstalk - Demo Session
PPTX
Introdução ao AWS Database Migration Service
PPTX
Escalando sua aplicação Web com Beanstalk
PPTX
Webinar: Introdução a Big data
PDF
Arquiteturas Cloud na AWS: Uma Introducao
PPTX
Iniciando com Amazon DynamoDB
PPTX
Mergulhando em desenvolvimento de aplicações serverless
PPTX
Fazendo seu DR na AWS
PDF
Raising the bar #5 - Melhores práticas de workloads Microsoft
PPTX
Amazon EC2 boas praticas e otimizações de desempenho
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...
Como construir sua primeira aplicação de Big Data na AWS
Explorando o poder do banco de dados com Amazon Aurora
Building blocks #5 - Recuperação de desastres de maneira prática na AWS
Seu primeiro aplicativo de Big Data
Deep dive com Amazon Aurora
Utilizando NoSQL para Big Data com DynamoDB
Fazendo seu DR na AWS de maneira prática
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
Blue Green Deployments com Elastic Beanstalk - Demo Session
Introdução ao AWS Database Migration Service
Escalando sua aplicação Web com Beanstalk
Webinar: Introdução a Big data
Arquiteturas Cloud na AWS: Uma Introducao
Iniciando com Amazon DynamoDB
Mergulhando em desenvolvimento de aplicações serverless
Fazendo seu DR na AWS
Raising the bar #5 - Melhores práticas de workloads Microsoft
Amazon EC2 boas praticas e otimizações de desempenho
Anúncio

Semelhante a Começando com aplicações serverless na AWS (20)

PPTX
Iniciando com AWS Lambda e serverless em cloud
PPTX
Construindo APIs com Amazon API Gateway e AWS Lambda
PPTX
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...
PPTX
PDF
Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016
PDF
Cloud & AWS: Da teoria à prática
PDF
Mobile Back end as a Service na AWS
PDF
Webinar Melhores práticas e lições aprendidas com aplicações sem servidor
PDF
Amazon EC2 Introducao e Dicas
PDF
Serverless Framework - Creating serverless applications
PPTX
Primeiros Passos na AWS
PDF
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
PPTX
Primeiros Passos na AWS
PDF
Amazon EC2 - Introdução, Benefícios e dicas
PDF
5. rodando containers docker na aws
PPTX
apresentação cloud aws Iaas Paas Saas.pptx
PDF
Introduction to Cloud Computing
PPTX
AWS SUMMIT São Paulo - DEV02 AWS e DevOps - Explore e aproveite o melhor dos ...
PPTX
Primeiros Passos na AWS
PDF
Fundamentos do asp.net
Iniciando com AWS Lambda e serverless em cloud
Construindo APIs com Amazon API Gateway e AWS Lambda
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...
Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016
Cloud & AWS: Da teoria à prática
Mobile Back end as a Service na AWS
Webinar Melhores práticas e lições aprendidas com aplicações sem servidor
Amazon EC2 Introducao e Dicas
Serverless Framework - Creating serverless applications
Primeiros Passos na AWS
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
Primeiros Passos na AWS
Amazon EC2 - Introdução, Benefícios e dicas
5. rodando containers docker na aws
apresentação cloud aws Iaas Paas Saas.pptx
Introduction to Cloud Computing
AWS SUMMIT São Paulo - DEV02 AWS e DevOps - Explore e aproveite o melhor dos ...
Primeiros Passos na AWS
Fundamentos do asp.net
Anúncio

Mais de Amazon Web Services LATAM (20)

PPTX
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
PPTX
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
PPTX
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
PPTX
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
PPTX
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
PPTX
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
PPTX
Automatice el proceso de entrega con CI/CD en AWS
PPTX
Automatize seu processo de entrega de software com CI/CD na AWS
PPTX
Cómo empezar con Amazon EKS
PPTX
Como começar com Amazon EKS
PPTX
Ransomware: como recuperar os seus dados na nuvem AWS
PPTX
Ransomware: cómo recuperar sus datos en la nube de AWS
PPTX
Ransomware: Estratégias de Mitigação
PPTX
Ransomware: Estratégias de Mitigación
PPTX
Aprenda a migrar y transferir datos al usar la nube de AWS
PPTX
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
PPTX
Cómo mover a un almacenamiento de archivos administrados
PPTX
Simplifique su BI con AWS
PPTX
Simplifique o seu BI com a AWS
PPTX
Os benefícios de migrar seus workloads de Big Data para a AWS
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
Automatice el proceso de entrega con CI/CD en AWS
Automatize seu processo de entrega de software com CI/CD na AWS
Cómo empezar con Amazon EKS
Como começar com Amazon EKS
Ransomware: como recuperar os seus dados na nuvem AWS
Ransomware: cómo recuperar sus datos en la nube de AWS
Ransomware: Estratégias de Mitigação
Ransomware: Estratégias de Mitigación
Aprenda a migrar y transferir datos al usar la nube de AWS
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
Cómo mover a un almacenamiento de archivos administrados
Simplifique su BI con AWS
Simplifique o seu BI com a AWS
Os benefícios de migrar seus workloads de Big Data para a AWS

Último (19)

PDF
Processos na gestão de transportes, TM100 Col18
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Processos na gestão de transportes, TM100 Col18
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Apple Pippin Uma breve introdução. - David Glotz
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Custos e liquidação no SAP Transportation Management, TM130 Col18
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
COBITxITIL-Entenda as diferença em uso governança TI
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Aula 18 - Manipulacao De Arquivos python
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Aula04-Academia Heri- Tecnologia Geral 2025
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14

Começando com aplicações serverless na AWS

  • 1. 2016, Amazon Web Services, Inc. ou Afiliadas. Todos os direitos reservados. Renato Barbosa, Arquiteto de Soluções, AWS 30 de Novembro de 2016 Conceitos básicos das arquiteturas Serverless
  • 2. Pauta Histórico AWS Lambda Amazon API Gateway Demonstração Padrões de arquitetura sem servidor Melhores práticas sem servidor
  • 3. Histórico Como os padrões de arquitetura Serverless com o AWS Lambda são a próxima evolução do design de aplicativos
  • 5. A arquitetura orientada a serviços Camada de apresentação Camada lógica Nível de dados
  • 6. A arquitetura de microsserviços
  • 7. Ferramentas para ajudar esse padrão são VASTAS Servidores da Web Bibliotecas de código Estrutura de web services/aplicativo Ferramentas de gerenciamento de configuração Plataformas de gerenciamento de API Padrões de implantação Padrões de CI/CD Contêineres Etc. Etc. Etc.
  • 8. A AWS ajudou também! Amazon EC2 EC2 Auto-Scaling AWS Elastic Load Balancer EC2 Auto-Recovery AWS Trusted Advisor AWS Elastic Beanstalk AWS OpsWorks AWS EC2 Container Service Etc. Etc. Etc.
  • 9. Mas…. Várias dessas ferramentas e inovações ainda estão aliadas a muitas dependências...
  • 10. Servidores (AAHHHHHHHHH!!) Qual tamanho de servidor é adequado para o meu orçamento? Quantos usuários criam excesso carga para os meus servidores? Qual capacidade disponível têm meus servidores? Como posso detectar se um servidor ficou comprometido? Quantos servidores devo orçar? Qual SO meus servidores devem executar? Quais usuários deveriam ter acesso aos meus servidores? Como posso controlar o acesso dos meus servidores? Como eu manterei os os patches do SO do meu servidor? Como o novo código será implantado nos meus servidores? Como poderei aumentar a utilização dos meus servidores? Quando devo decidir escalonar meus servidores? Que tamanho de servidor é adequado para o meu desempenho? Devo ajustar as configurações de SO para otimizar meu aplicativo? Quais pacotes devem ser "baked" nas minhas imagens do servidor? Quando devo decidir escalonar meus servidores? Como devo lidar com alterações na configuração do servidor? Como o aplicativo lidará com falha de hardware do servidor?
  • 11. Arquitetar para ser Serverless Totalmente gerenciado • Sem provisionamento • Administração zero • Alta disponibilidade Produtividade do desenvolvedor • Foco no código que importa • Inovação rápida • Redução do time-to-market Escalabilidade contínua • Automaticamente • Escalabilidade para mais ou menos
  • 13. Serviço de computação Serverless, orientado por evento Lambda = microsserviço sem servidor
  • 14. Componentes do Lambda • Uma função do Lambda (código) • Uma fonte de evento • O serviço do AWS Lambda • O ambiente de rede de execução
  • 15. A função do Lambda • Seu código (Java, NodeJS, Python) • O IAM role que o código assume durante a execução • A quantidade de memória alocada para seu código (afeta CPU e rede também) Uma função do Lambda válida e completa
  • 16. Uma fonte de evento • Quando sua função deve ser executada? • Muitos serviços da AWS podem ser uma fonte de evento: • S3 • Kinesis • SNS • DynamoDB • CloudWatch • Config Rules • Amazon Echo • Etc. • …e o Amazon API Gateway
  • 17. O serviço do AWS Lambda • Executa seu código de função sem você gerenciar ou escalonar servidores. • Fornece API para chamar a execução da sua função. • Garante que a função seja executada quando chamada, em paralelo, independentemente de escala. • Fornece outros recursos para sua função (logs, monitoramento).
  • 18. O ambiente de rede de funções Default – é fornecido a execução da função no ambiente de uma VPC padrão. • Acesso à internet sempre permitido para sua função • Sem acesso a ativos implementados na VPC VPC do cliente – Sua função é executada dentro do contexto da sua própria VPC. • Comunique-se privadamente com outros recursos dentro da VPC. • Configuração e comportamento conhecidos com: – Sub-redes – Elastic Network Interfaces (ENIs) – Security Groups do EC2 – Tabelas de rotas (Route Tables) da VPC – NAT Gateway
  • 20. Muitas das formas existentes de abstrair servidores SaaS PaaS MBaaS *aaS Mecanismos/plataformas de aplicativos
  • 21. O que é único em relação ao Lambda? Abstração do nível de código/função (flexível, familiar) O modelo de segurança (IAM, VPC) O modelo de preço A comunidade Integração com o ecossistema de serviços da AWS! • Escala • Triggers
  • 22. Várias opções sem servidor na AWS Armazenamento Banco de dadosRede Computação Entrega de conteúdoSistemas de mensagens e filasSegurança Gateways Gerenciamento de usuários Monitoramento e registro Internet das Coisas Machine Learning Analytcs do streaming
  • 24. PlayOn! Sports – processamento de streaming de vídeo Codifica- dores de laptop HLS Reproduzir S3 Cliente móvel do VOD Stream Streaming do CloudFront Streaming em tempo real do cliente móvel CloudFront S3 Ingest Transcodi- ficar 480p Copiar HQ Transcodi- ficar 360p Transcodifica- ção somente do áudio Miniatura Análise de QOS Funções do Lambda em cascata http://www.slideshare.net/AmazonWebServices/arc308-the-serverless-company-using-aws-lambda
  • 25. “Mas… Para usar o Lambda, preciso mesmo arquiteturar aplicativos orientados para eventos?” – você (talvez)
  • 26. O SOA ainda funciona.
  • 28. Um serviço totalmente gerenciado para suas APIs Crie Configure Publique Mantenha Monitore Proteja
  • 29. Demonstração Função do AWS Lambda navegador da web Amazon S3 Conteúdo dinâmico Website sem servidor Amazon API Gateway Conteúdo estático Amazon DynamoDB
  • 33. Mecanismo de análise em tempo real
  • 35. Melhores práticas do AWS Lambda 1. Limite o tamanho da sua função – especialmente para Java (iniciar o JVM leva tempo) 2. Nó – lembre-se de que a execução é assíncrona. 3. Não pressuponha reutilização do contêiner da função – mas aproveite quando isso ocorrer. 4. Não se esqueça do disco (diretório /tmp de 500 MB fornecido a cada função) 5. Use apelidos ("Aliases") da função para liberação. 6. Use o logger incluído (inclua detalhes do contexto fornecido pelo serviço) 7. Crie métricas personalizadas (centradas em operações e em negócios)
  • 36. Melhores práticas do Amazon API Gateway 4. Use modelos de mapeamento de solicitação/resposta em todos os lugares dentro da razão, não passagem. 5. Assuma propriedade dos códigos de resposta de HTTP 6. Use importar/exportar Swagger para compartilhamento entre contas 1. Use Mock Integrations 2. Combine com Cognito para controle de acesso baseado em usuário final. 3. Use variáveis de estágio (injete valores do config da API nas funções do Lambda para registro, comportamento)
  • 37. Melhores práticas adicionais 1. Use convenções de nomes estratégicos e consumíveis (nomes da função do Lambda, funções de IAM, nomes da API, nomes do estágio da API, etc.) 2. Use convenções de nome e versionamento para criar automação. 3. Externalize autorização para funções de IAM sempre que possível 4. Privilégio mínimo e funções de IAM separadas 5. Externalize a configuração – o DynamoDB é ótimo para isso. 6. Entre em contato com suporte da AWS em case de grandes eventos de escalabilidades conhecidos 7. Tenha ciência de estrangulamento de serviço, fale com o suporte da AWS em caso positivo.
  • 39. Vá construir algo! Amazon API Gateway AWS Lambda Amazon DynamoDB