{"id":37937,"date":"2019-10-31T22:20:41","date_gmt":"2019-10-31T19:20:41","guid":{"rendered":"https:\/\/prohoster.info\/blog\/detalnyj-razbor-aws-lambda\/"},"modified":"2019-10-31T22:20:41","modified_gmt":"2019-10-31T19:20:41","slug":"detalnyj-razbor-aws-lambda","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda","title":{"rendered":"An\u00e1lise detalhada do AWS Lambda","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><em>A tradu\u00e7\u00e3o do artigo foi preparada especialmente para os alunos do curso <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/dOuF\/\">\u00abServi\u00e7os em Nuvem\u00bb<\/a><\/noindex>. Est\u00e1 interessado em se desenvolver nesta \u00e1rea? Assista ao masterclass de Egor Zuev (TeamLead na empresa InBit) <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/L2NX\/\">\u00abServi\u00e7o AWS EC2\u00bb<\/a><\/noindex> e junte-se ao pr\u00f3ximo grupo do curso: in\u00edcio em 26 de setembro. <\/em><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"An\u00e1lise detalhada do AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/cbf78e6c6d04f9beec2d99f8891bf7d9.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Cada vez mais pessoas est\u00e3o migrando para o AWS Lambda devido \u00e0 escalabilidade, desempenho, economia e \u00e0 capacidade de processar milh\u00f5es, at\u00e9 trilh\u00f5es, de solicita\u00e7\u00f5es por m\u00eas. Para isso, n\u00e3o \u00e9 necess\u00e1rio gerenciar a infraestrutura em que o servi\u00e7o opera. A auto-escalabilidade permite atender a milhares de solicita\u00e7\u00f5es simult\u00e2neas por segundo. Acredito que o AWS Lambda pode ser corretamente chamado de um dos servi\u00e7os mais procurados da AWS.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><\/p>\n<h2 id=\"aws-lambda\">AWS Lambda<\/h2>\n<p><\/p>\n<p>O AWS Lambda \u00e9 um servi\u00e7o de computa\u00e7\u00e3o sem servidor orientado a eventos que permite executar c\u00f3digo sem a necessidade de provisionar e administrar servidores, complementando outros servi\u00e7os da AWS com base na l\u00f3gica do usu\u00e1rio. O Lambda reage automaticamente a v\u00e1rios eventos (os chamados gatilhos), como solicita\u00e7\u00f5es HTTP via Amazon API Gateway, altera\u00e7\u00f5es de dados em buckets do Amazon S3 ou tabelas do Amazon DynamoDB; ou voc\u00ea pode executar seu c\u00f3digo atrav\u00e9s de chamadas de API, utilizando o AWS SDK e transi\u00e7\u00f5es entre estados no AWS Step Functions.<\/p>\n<p><\/p>\n<p>O Lambda executa c\u00f3digo em uma infraestrutura de computa\u00e7\u00e3o altamente dispon\u00edvel e \u00e9 totalmente respons\u00e1vel pela administra\u00e7\u00e3o da plataforma subjacente, incluindo manuten\u00e7\u00e3o de servidores e do sistema operacional, provisionamento de recursos, escalabilidade autom\u00e1ticas, monitoramento de c\u00f3digo e registro. Ou seja, voc\u00ea s\u00f3 precisa fazer o upload do seu c\u00f3digo e configurar como e quando ele deve ser executado. O servi\u00e7o se encarrega de lan\u00e7\u00e1-lo e proporcionar alta disponibilidade ao seu aplicativo.<\/p>\n<p><\/p>\n<h2 id=\"kogda-perehodit-na-lambda\">Quando migrar para o Lambda?<\/h2>\n<p><\/p>\n<p>O AWS Lambda \u00e9 uma plataforma de computa\u00e7\u00e3o conveniente, adequada para uma variedade de cen\u00e1rios de aplica\u00e7\u00e3o, desde que a linguagem e o ambiente de execu\u00e7\u00e3o do seu c\u00f3digo sejam suportados pelo servi\u00e7o. Se voc\u00ea deseja se concentrar no c\u00f3digo e na l\u00f3gica do neg\u00f3cio, delegando a manuten\u00e7\u00e3o de servidores, provisionamento de recursos e escalabilidade a um fornecedor terceirizado por um pre\u00e7o razo\u00e1vel, definitivamente vale a pena migrar para o AWS Lambda.<\/p>\n<p><\/p>\n<p>O Lambda \u00e9 ideal para a cria\u00e7\u00e3o de interfaces de programa\u00e7\u00e3o, e ao utilizar o servi\u00e7o juntamente com o API Gateway, \u00e9 poss\u00edvel reduzir significativamente os custos e acelerar a entrada no mercado. Existem v\u00e1rias maneiras de usar as fun\u00e7\u00f5es Lambda e op\u00e7\u00f5es para organizar uma arquitetura sem servidor \u2014 cada um pode escolher algo adequado com base no objetivo estabelecido.<\/p>\n<p><\/p>\n<p>O Lambda permite realizar uma ampla gama de tarefas. Assim, com o suporte do CloudWatch, \u00e9 poss\u00edvel criar tarefas agendadas e automatizar processos individuais. N\u00e3o h\u00e1 restri\u00e7\u00f5es quanto \u00e0 natureza e intensidade do uso do servi\u00e7o (s\u00e3o considerados o consumo de mem\u00f3ria e o tempo), e nada impede voc\u00ea de trabalhar de forma planejada em um microservi\u00e7o completo baseado no Lambda.<\/p>\n<p><\/p>\n<p>Aqui \u00e9 poss\u00edvel criar a\u00e7\u00f5es orientadas a servi\u00e7os que n\u00e3o s\u00e3o executadas continuamente. Um exemplo t\u00edpico \u00e9 a escalabilidade de imagens. Mesmo em sistemas distribu\u00eddos, as fun\u00e7\u00f5es Lambda permanecem relevantes.<\/p>\n<p><\/p>\n<p>Portanto, se voc\u00ea n\u00e3o quer se preocupar em alocar e administrar recursos computacionais \u2014 experimente o AWS Lambda; se voc\u00ea n\u00e3o precisa de c\u00e1lculos pesados e intensivos em recursos \u2014 tamb\u00e9m experimente o AWS Lambda; se seu c\u00f3digo \u00e9 executado periodicamente \u2014 est\u00e1 correto, voc\u00ea deve experimentar o AWS Lambda.<\/p>\n<p><\/p>\n<h2 id=\"bezopasnost\">Seguran\u00e7a<\/h2>\n<p><\/p>\n<p>At\u00e9 o momento, n\u00e3o h\u00e1 queixas sobre a seguran\u00e7a. Por outro lado, como muitos processos internos e caracter\u00edsticas de implementa\u00e7\u00e3o deste modelo s\u00e3o ocultados do usu\u00e1rio do ambiente gerenciado da AWS Lambda, algumas regras comuns de seguran\u00e7a na nuvem perdem relev\u00e2ncia.<\/p>\n<p><\/p>\n<p>Como a maioria dos servi\u00e7os da AWS, o Lambda \u00e9 fornecido segundo o princ\u00edpio de responsabilidade compartilhada entre a AWS e o cliente em termos de seguran\u00e7a e conformidade regulamentar. Este princ\u00edpio reduz a carga operacional sobre o cliente, uma vez que a AWS assume as tarefas de manuten\u00e7\u00e3o, administra\u00e7\u00e3o e controle dos componentes do servi\u00e7o \u2014 desde o sistema operacional do host e n\u00edvel de virtualiza\u00e7\u00e3o at\u00e9 a seguran\u00e7a f\u00edsica da infraestrutura. <\/p>\n<p><\/p>\n<p>Falando especificamente sobre o AWS Lambda, a AWS \u00e9 respons\u00e1vel pela gest\u00e3o da infraestrutura subjacente, servi\u00e7os b\u00e1sicos associados, sistema operacional e plataforma de aplicativos. Enquanto isso, o cliente \u00e9 respons\u00e1vel pela seguran\u00e7a de seu c\u00f3digo, armazenamento de dados confidenciais, controle de acesso a esses dados, bem como ao servi\u00e7o e recursos Lambda (Identity and Access Management, IAM), incluindo dentro das fun\u00e7\u00f5es utilizadas.<\/p>\n<p><\/p>\n<p>O diagrama abaixo mostra o modelo de responsabilidade compartilhada aplic\u00e1vel ao AWS Lambda. A \u00e1rea de responsabilidade da AWS \u00e9 marcada em laranja, enquanto a responsabilidade do cliente \u00e9 mostrada em azul. Como pode ver, a AWS assume mais responsabilidade pelas aplica\u00e7\u00f5es implantadas no servi\u00e7o.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"An\u00e1lise detalhada do AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/d1f324929e3b03d454a0cd9842844cb4.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><em>Modelo de responsabilidade compartilhada aplic\u00e1vel ao AWS Lambda<\/em><\/p>\n<p><\/p>\n<h3 id=\"sreda-vypolneniya-lambda\">Ambiente de execu\u00e7\u00e3o do Lambda<\/h3>\n<p><\/p>\n<p>A principal vantagem do Lambda \u00e9 que, ao executar fun\u00e7\u00f5es em seu nome, o servi\u00e7o aloca automaticamente os recursos necess\u00e1rios. Voc\u00ea pode evitar gastar tempo e esfor\u00e7o na administra\u00e7\u00e3o de sistemas e se concentrar na l\u00f3gica de neg\u00f3cios e na escrita de c\u00f3digo.<\/p>\n<p><\/p>\n<p>O servi\u00e7o Lambda \u00e9 dividido em duas camadas. A primeira \u00e9 a camada de controle. De acordo com a Wikipedia, a camada de controle \u00e9 a parte da rede respons\u00e1vel pelo transporte do tr\u00e1fego de sinaliza\u00e7\u00e3o e pela rotea\u00e7\u00e3o. Ela \u00e9 o componente principal que toma decis\u00f5es globais sobre aloca\u00e7\u00e3o, manuten\u00e7\u00e3o e distribui\u00e7\u00e3o de cargas de trabalho. Al\u00e9m disso, a camada de controle atua como a topologia de rede do provedor de solu\u00e7\u00f5es, respons\u00e1vel pela rotea\u00e7\u00e3o e gerenciamento do tr\u00e1fego.<\/p>\n<p><\/p>\n<p>A segunda camada \u00e9 a camada de dados. Assim como a camada de controle, ela possui suas pr\u00f3prias fun\u00e7\u00f5es. A camada de controle fornece APIs para gerenciar fun\u00e7\u00f5es (CreateFunction, UpdateFunctionCode) e controla a intera\u00e7\u00e3o do Lambda com outros servi\u00e7os da AWS. A camada de dados gerencia APIs de chamadas (Invoke API), que acionam fun\u00e7\u00f5es Lambda. Ap\u00f3s a chamada de uma fun\u00e7\u00e3o, a camada de controle aloca ou seleciona um ambiente de execu\u00e7\u00e3o existente, previamente preparado para essa fun\u00e7\u00e3o, e ent\u00e3o executa o c\u00f3digo nele.<\/p>\n<p><\/p>\n<p>O AWS Lambda suporta v\u00e1rias linguagens de programa\u00e7\u00e3o, incluindo Java 8, Python 3.7, Go, NodeJS 8, .NET Core 2 e outras, atrav\u00e9s de seus respectivos ambientes de execu\u00e7\u00e3o. O AWS atualiza regularmente esses ambientes, distribui corre\u00e7\u00f5es de seguran\u00e7a e realiza outras opera\u00e7\u00f5es de manuten\u00e7\u00e3o. O Lambda permite o uso de outras linguagens, desde que voc\u00ea implemente seu pr\u00f3prio ambiente de execu\u00e7\u00e3o. Nesse caso, voc\u00ea tamb\u00e9m ser\u00e1 respons\u00e1vel pela manuten\u00e7\u00e3o dele, incluindo a seguran\u00e7a.<\/p>\n<p><\/p>\n<p><strong>Como tudo isso funciona e como o servi\u00e7o executar\u00e1 suas fun\u00e7\u00f5es?<\/strong><\/p>\n<p><\/p>\n<p>Cada fun\u00e7\u00e3o opera em um ou mais ambientes dedicados, que existem apenas durante o ciclo de vida dessa fun\u00e7\u00e3o e, em seguida, s\u00e3o destru\u00eddos. Em cada ambiente, apenas uma solicita\u00e7\u00e3o \u00e9 executada ao mesmo tempo, mas ele \u00e9 reutilizado se houver v\u00e1rias solicita\u00e7\u00f5es em s\u00e9rie da mesma fun\u00e7\u00e3o. Todos os ambientes de execu\u00e7\u00e3o funcionam em m\u00e1quinas virtuais com virtualiza\u00e7\u00e3o de hardware \u2014 os chamados microVM. Cada microVM \u00e9 atribu\u00edda a uma conta espec\u00edfica da AWS e pode ser reutilizada v\u00e1rias vezes por diferentes ambientes para executar diversas fun\u00e7\u00f5es nessa conta. Os microVM s\u00e3o empacotados nas unidades estruturais da plataforma de hardware Lambda Worker, propriedade da AWS. O mesmo ambiente de execu\u00e7\u00e3o n\u00e3o pode ser usado por diferentes fun\u00e7\u00f5es, assim como os microVM s\u00e3o \u00fanicos para diferentes contas AWS.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"An\u00e1lise detalhada do AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/9c4fd7aeaf3b582aed5fa8a6a876c315.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><em>Modelo de isolamento no AWS Lambda<\/em><\/p>\n<p><\/p>\n<p>O isolamento dos ambientes de execu\u00e7\u00e3o \u00e9 implementado atrav\u00e9s de v\u00e1rios mecanismos. No n\u00edvel mais alto, existem c\u00f3pias separadas dos seguintes componentes em cada ambiente:<\/p>\n<p><\/p>\n<ul>\n<li>C\u00f3digo da fun\u00e7\u00e3o<\/li>\n<li>Quaisquer camadas Lambda escolhidas para a fun\u00e7\u00e3o<\/li>\n<li>Ambiente de execu\u00e7\u00e3o da fun\u00e7\u00e3o<\/li>\n<li>Espa\u00e7o de usu\u00e1rio m\u00ednimo baseado no Amazon Linux<\/li>\n<\/ul>\n<p><\/p>\n<p>Os seguintes mecanismos s\u00e3o aplicados para isolar diferentes ambientes de execu\u00e7\u00e3o:<\/p>\n<p><\/p>\n<ul>\n<li>cgroups \u2014 limitando o acesso aos recursos da CPU, mem\u00f3ria, largura de banda de armazenamento e rede para cada ambiente de execu\u00e7\u00e3o;<\/li>\n<li>namespaces \u2014 agrupando IDs de processos, IDs de usu\u00e1rios, interfaces de rede e outros recursos gerenciados pelo n\u00facleo Linux. Cada ambiente de execu\u00e7\u00e3o opera em seu pr\u00f3prio espa\u00e7o de nome;<\/li>\n<li>seccomp-bpf \u2014 limitando chamadas de sistema que podem ser usadas no ambiente de execu\u00e7\u00e3o;<\/li>\n<li>iptables e tabelas de roteamento \u2014 isolando ambientes de execu\u00e7\u00e3o entre si;<\/li>\n<li>chroot \u2014 fornecimento de acesso restrito ao sistema de arquivos subjacente.<\/li>\n<\/ul>\n<p><\/p>\n<p>Em combina\u00e7\u00e3o com as tecnologias propriet\u00e1rias de isolamento da AWS, os mecanismos listados garantem uma separa\u00e7\u00e3o confi\u00e1vel dos ambientes de execu\u00e7\u00e3o. Ambientes isolados dessa forma n\u00e3o podem acessar ou modificar os dados de outros ambientes.<\/p>\n<p><\/p>\n<p>Embora v\u00e1rios ambientes de execu\u00e7\u00e3o de uma conta AWS possam ser executados em uma \u00fanica microVM, em nenhuma circunst\u00e2ncia as microVM podem ser compartilhadas entre diferentes contas AWS. Para o isolamento das microVM, o AWS Lambda utiliza apenas dois mecanismos: inst\u00e2ncias EC2 e Firecracker. O isolamento de convidados (guest isolation) no Lambda baseado em inst\u00e2ncias EC2 \u00e9 aplicado desde 2015. O Firecracker \u00e9 um novo hipervisor de c\u00f3digo aberto, projetado especificamente pela AWS para cargas de trabalho sem servidor, apresentado em 2018. O hardware f\u00edsico em que as microVM s\u00e3o executadas \u00e9 compartilhado entre cargas de trabalho de diferentes contas.<\/p>\n<p><\/p>\n<h3 id=\"sohranenie-sred-i-sostoyaniy-processov\">Salvamento de ambientes e estados dos processos<\/h3>\n<p><\/p>\n<p>Embora os ambientes de execu\u00e7\u00e3o do Lambda sejam \u00fanicos para diferentes fun\u00e7\u00f5es, uma mesma fun\u00e7\u00e3o pode ser invocada v\u00e1rias vezes, ou seja, o ambiente de execu\u00e7\u00e3o pode existir por v\u00e1rias horas antes de ser destru\u00eddo.<\/p>\n<p><\/p>\n<p>Em cada ambiente de execu\u00e7\u00e3o do Lambda, tamb\u00e9m existe um sistema de arquivos com permiss\u00e3o de escrita, acess\u00edvel atrav\u00e9s do diret\u00f3rio \/tmp. Seu conte\u00fado n\u00e3o pode ser acessado de outros ambientes de execu\u00e7\u00e3o. Quanto ao salvamento dos estados dos processos, os arquivos gravados em \/tmp existem durante todo o ciclo de vida do ambiente de execu\u00e7\u00e3o. Isso permite acumular resultados de v\u00e1rias invoca\u00e7\u00f5es, o que \u00e9 especialmente \u00fatil para opera\u00e7\u00f5es dispendiosas, como o carregamento de modelos de aprendizado de m\u00e1quina.<\/p>\n<p><\/p>\n<h2 id=\"peredacha-dannyh-vyzovov\">Transfer\u00eancia de dados das invoca\u00e7\u00f5es<\/h2>\n<p><\/p>\n<p>A interface Invoke API pode ser utilizada em dois modos: modo de eventos e modo de 'request-response'. No modo de eventos, a invoca\u00e7\u00e3o \u00e9 colocada em uma fila para execu\u00e7\u00e3o posterior. No modo de 'request-response', a fun\u00e7\u00e3o \u00e9 invocada instantaneamente com a carga \u00fatil fornecida, ap\u00f3s a qual uma resposta \u00e9 retornada. Em ambos os casos, a fun\u00e7\u00e3o \u00e9 executada no ambiente Lambda, mas com diferentes caminhos de carga \u00fatil.<\/p>\n<p><\/p>\n<p>Durante chamadas do tipo \"solicita\u00e7\u00e3o-resposta\", a carga \u00fatil \u00e9 recebida pela API de processamento de solicita\u00e7\u00f5es (API Caller), como o AWS API Gateway ou AWS SDK, no balanceador de carga, e depois na fun\u00e7\u00e3o de execu\u00e7\u00e3o de chamadas Lambda (Invoke Service). Esta \u00faltima determina o ambiente adequado para a execu\u00e7\u00e3o da fun\u00e7\u00e3o e encaminha a carga \u00fatil para concluir a chamada. O balanceador de carga recebe tr\u00e1fego com prote\u00e7\u00e3o TLS pela Internet. O tr\u00e1fego dentro do servi\u00e7o Lambda - ap\u00f3s o balanceador de carga - passa atrav\u00e9s do VPC interno em uma regi\u00e3o espec\u00edfica da AWS.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"An\u00e1lise detalhada do AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/57f97517597f51d83890869b8385074a.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><em>Modelo de processamento de chamadas AWS Lambda: modo \"solicita\u00e7\u00e3o-resposta\"<\/em><\/p>\n<p><\/p>\n<p>Chamadas de eventos podem ser executadas imediatamente ou colocadas em uma fila. Em alguns casos, a fila \u00e9 implementada atrav\u00e9s do Amazon SQS (Amazon Simple Queue Service), que transmite chamadas para o servi\u00e7o de execu\u00e7\u00e3o de chamadas Lambda por meio de um processo interno de polling (poller). O tr\u00e1fego transmitido \u00e9 protegido por TLS, sem qualquer criptografia adicional dos dados armazenados no Amazon SQS. <\/p>\n<p><\/p>\n<p>Chamadas de eventos n\u00e3o retornam respostas - qualquer informa\u00e7\u00e3o de resposta do Lambda Worker \u00e9 simplesmente ignorada. Chamadas baseadas em eventos do Amazon S3, Amazon SNS, CloudWatch e outras fontes s\u00e3o processadas pelo servi\u00e7o Lambda em modo de eventos. Chamadas de streams do Amazon Kinesis e DynamoDB, chamadas de filas SQS, balanceador de carga de aplicativos e API Gateway s\u00e3o processadas no modo \"solicita\u00e7\u00e3o-resposta\".<\/p>\n<p><\/p>\n<h3 id=\"monitoring\">Monitoramento<\/h3>\n<p><\/p>\n<p>Voc\u00ea pode monitorar e auditar fun\u00e7\u00f5es Lambda usando v\u00e1rios mecanismos e servi\u00e7os da AWS, incluindo os seguintes.<\/p>\n<p><\/p>\n<p><strong>Amazon CloudWatch<\/strong><br \/>\nColeta v\u00e1rias estat\u00edsticas, como o n\u00famero de solicita\u00e7\u00f5es, a dura\u00e7\u00e3o das solicita\u00e7\u00f5es e o n\u00famero de solicita\u00e7\u00f5es que resultaram em erro.<\/p>\n<p><\/p>\n<p><strong>Amazon CloudTrail<\/strong><br \/>\nPermite registrar, monitorar continuamente e manter informa\u00e7\u00f5es sobre atividades em sua conta relacionadas \u00e0 sua infraestrutura AWS. Voc\u00ea ter\u00e1 um hist\u00f3rico completo das a\u00e7\u00f5es realizadas por meio do console AWS Management Console, AWS SDK, ferramentas de linha de comando e outros servi\u00e7os da AWS.<\/p>\n<p><\/p>\n<p><strong>AWS X-Ray<\/strong><br \/>\nOferece total visibilidade de todas as etapas de processamento de solicita\u00e7\u00f5es em seu aplicativo com base no mapa de seus componentes internos. Permite analisar aplicativos durante o desenvolvimento e no ambiente de produ\u00e7\u00e3o.<\/p>\n<p><\/p>\n<p><strong>AWS Config<\/strong><br \/>\nVoc\u00ea poder\u00e1 monitorar as altera\u00e7\u00f5es na configura\u00e7\u00e3o das fun\u00e7\u00f5es Lambda (incluindo sua exclus\u00e3o) e no ambiente de execu\u00e7\u00e3o, tags, nomes dos manipuladores, tamanho do c\u00f3digo, aloca\u00e7\u00e3o de mem\u00f3ria, configura\u00e7\u00f5es de tempo limite e par\u00e2metros de paralelismo, bem como a fun\u00e7\u00e3o IAM do Lambda, sub-rede e vincula\u00e7\u00f5es de grupos de seguran\u00e7a.<\/p>\n<p><\/p>\n<h3 id=\"zaklyuchenie\">Conclus\u00e3o<\/h3>\n<p><\/p>\n<p>O AWS Lambda oferece um poderoso conjunto de ferramentas para criar aplica\u00e7\u00f5es seguras e escal\u00e1veis. Muitos m\u00e9todos de seguran\u00e7a e conformidade regulat\u00f3ria no AWS Lambda s\u00e3o semelhantes aos usados em outros servi\u00e7os da AWS, embora haja exce\u00e7\u00f5es. Desde mar\u00e7o de 2019, o Lambda atende \u00e0s exig\u00eancias do SOC 1, SOC 2, SOC 3, PCI DSS, a lei dos EUA sobre privacidade e responsabilidade na sa\u00fade (HIPAA) e outras regulamenta\u00e7\u00f5es. Portanto, ao pensar em implementar uma nova aplica\u00e7\u00e3o, considere o servi\u00e7o AWS Lambda \u2014 pode ser a melhor op\u00e7\u00e3o para sua necessidade.<\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/466519\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00ab\u041e\u0431\u043b\u0430\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b\u00bb. \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438? \u0421\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043c\u0430\u0441\u0442\u0435\u0440-\u043a\u043b\u0430\u0441\u0441 \u0415\u0433\u043e\u0440\u0430 \u0417\u0443\u0435\u0432\u0430 (TeamLead \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 InBit) \u00abAWS EC2 \u0441\u0435\u0440\u0432\u0438\u0441\u00bb \u0438 \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0439\u0442\u0435\u0441\u044c \u043a \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u043a\u0443\u0440\u0441\u0430: \u0441\u0442\u0430\u0440\u0442 26 \u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f. \u0412\u0441\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043b\u044e\u0434\u0435\u0439 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u044f\u0442 \u043d\u0430 AWS Lambda \u0440\u0430\u0434\u0438 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u0438, \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0438 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u044b \u0438 \u0434\u0430\u0436\u0435 \u0442\u0440\u0438\u043b\u043b\u0438\u043e\u043d\u044b \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u043c\u0435\u0441\u044f\u0446. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28468,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37937","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00ab\u041e\u0431\u043b\u0430\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b\u00bb. \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438?\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0414\u0435\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u0431\u043e\u0440 AWS Lambda | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00ab\u041e\u0431\u043b\u0430\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b\u00bb. \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438?\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:20:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:20:41+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 An\u00e1lise detalhada do AWS Lambda | ProHoster","description":"A tradu\u00e7\u00e3o do artigo foi preparada especialmente para os alunos do curso \"Servi\u00e7os de Nuvem\". Est\u00e1 interessado em se desenvolver nessa \u00e1rea?","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0414\u0435\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u0431\u043e\u0440 AWS Lambda | ProHoster","og:description":"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00ab\u041e\u0431\u043b\u0430\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b\u00bb. \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438?","og:url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:20:41+00:00","article:modified_time":"2019-10-31T19:20:41+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37937","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 19:50:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:18:22","updated":"2026-01-23 19:50:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/37937","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=37937"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/37937\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/28468"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=37937"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=37937"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=37937"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}