{"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\/ro\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda","title":{"rendered":"Analiza detaliat\u0103 a AWS Lambda","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><em>Traducerea articolului a fost preg\u0103tit\u0103 special pentru studen\u021bii cursului <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/dOuF\/\">\u201eServicii Cloud\u201d<\/a><\/noindex>. E\u0219ti interesat de dezvoltarea \u00een acest domeniu? Urm\u0103re\u0219te masterclass-ul lui Egor Zuev (TeamLead la InBit) <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/L2NX\/\">\u201eServiciul AWS EC2\u201d<\/a><\/noindex> \u0219i al\u0103tur\u0103-te celei mai apropiate grupe de curs: \u00eencepere 26 septembrie. <\/em><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Analiza detaliat\u0103 a AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/cbf78e6c6d04f9beec2d99f8891bf7d9.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Din ce \u00een ce mai mul\u021bi oameni trec la AWS Lambda pentru scalabilitate, performan\u021b\u0103, economii \u0219i capacitatea de a gestiona milioane \u0219i chiar trilioane de solicit\u0103ri pe lun\u0103. Pentru aceasta, nu trebuie s\u0103 gestionezi infrastructura pe care ruleaz\u0103 serviciul. Iar scalarea automat\u0103 permite gestionarea a mii de solicit\u0103ri simultane pe secund\u0103. Cred c\u0103 AWS Lambda poate fi considerat cu dreptate unul dintre cele mai solicitate servicii 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>AWS Lambda este un serviciu de calcul f\u0103r\u0103 server, bazat pe evenimente, care permite executarea codului f\u0103r\u0103 alocarea \u0219i administrarea serverelor, complet\u00e2nd alte servicii AWS \u00een func\u021bie de logica utilizatorului. Lambda r\u0103spunde automat la diferite evenimente (cunoscut sub numele de trigger-e), cum ar fi solicit\u0103rile HTTP prin Amazon API Gateway, modificarea datelor \u00een co\u0219urile Amazon S3 sau tabelele Amazon DynamoDB; sau po\u021bi s\u0103 \u00ee\u021bi lansezi codul prin apeluri API, folosind AWS SDK \u0219i tranzi\u021bii \u00eentre st\u0103ri \u00een AWS Step Functions.<\/p>\n<p><\/p>\n<p>Lambda execut\u0103 codul pe o infrastructur\u0103 de calcul de \u00eenalt\u0103 disponibilitate \u0219i se ocup\u0103 complet de administrarea platformei de baz\u0103, inclusiv \u00eentre\u021binerea serverelor \u0219i a sistemului de operare, alocarea resurselor, scalarea automat\u0103, monitorizarea codului \u0219i logarea. Asta \u00eenseamn\u0103 c\u0103 trebuie doar s\u0103 \u00eencarci codul t\u0103u \u0219i s\u0103 configurezi cum \u0219i c\u00e2nd acesta ar trebui s\u0103 ruleze. \u00cen schimb, serviciul va avea grij\u0103 de lansarea acestuia \u0219i va asigura disponibilitatea ridicat\u0103 a aplica\u021biei tale.<\/p>\n<p><\/p>\n<h2 id=\"kogda-perehodit-na-lambda\">C\u00e2nd s\u0103 treci la Lambda?<\/h2>\n<p><\/p>\n<p>AWS Lambda este o platform\u0103 de calcul convenabil\u0103, potrivit\u0103 pentru o varietate de scenarii de aplicare, desigur, dac\u0103 limbajul \u0219i mediul de execu\u021bie al codului t\u0103u sunt suportate de serviciu. Dac\u0103 vrei s\u0103 te concentrezi pe cod \u0219i logica de afaceri, l\u0103s\u00e2nd \u00eentre\u021binerea serverelor, alocarea resurselor \u0219i scalarea unui furnizor ter\u021b pentru un pre\u021b rezonabil, cu siguran\u021b\u0103 ar trebui s\u0103 treci la AWS Lambda.<\/p>\n<p><\/p>\n<p>Lambda este ideal pentru crearea interfe\u021belor de programare, iar dac\u0103 utiliza\u021bi serviciul \u00eempreun\u0103 cu API Gateway, pute\u021bi reduce semnificativ costurile \u0219i s\u0103 ajunge\u021bi mai repede pe pia\u021b\u0103. Exist\u0103 diverse modalit\u0103\u021bi de a utiliza func\u021biile Lambda \u0219i op\u021biuni pentru organizarea arhitecturii f\u0103r\u0103 server \u2014 fiecare poate alege ceva potrivit \u00een func\u021bie de obiectivul stabilit.<\/p>\n<p><\/p>\n<p>Lambda permite executarea unei game largi de sarcini. De exemplu, datorit\u0103 suportului CloudWatch, pute\u021bi crea sarcini programate \u0219i automatiza procese separate. Nu exist\u0103 restric\u021bii cu privire la natura \u0219i intensitatea utiliz\u0103rii serviciului (se iau \u00een considerare consumul de memorie \u0219i timpul), iar nimic nu v\u0103 \u00eempiedic\u0103 s\u0103 lucra\u021bi constant la un microserviciu complet bazat pe Lambda.<\/p>\n<p><\/p>\n<p>Aici pute\u021bi crea ac\u021biuni orientate spre servicii, care nu sunt executate constant. Un exemplu tipic este scalarea imaginilor. Chiar \u0219i \u00een cazul sistemelor distribuite, func\u021biile Lambda r\u0103m\u00e2n relevante.<\/p>\n<p><\/p>\n<p>Deci, dac\u0103 nu dori\u021bi s\u0103 v\u0103 ocupa\u021bi de alocarea \u0219i administrarea resurselor de calcul \u2014 \u00eencerca\u021bi AWS Lambda; dac\u0103 nu ave\u021bi nevoie de calcule grele \u0219i consumatoare de resurse \u2014 de asemenea, \u00eencerca\u021bi AWS Lambda; dac\u0103 codul dvs. este executat periodic \u2014 este corect, ar trebui s\u0103 \u00eencerca\u021bi AWS Lambda.<\/p>\n<p><\/p>\n<h2 id=\"bezopasnost\">Securitate<\/h2>\n<p><\/p>\n<p>P\u00e2n\u0103 acum, nu au existat pl\u00e2ngeri legate de securitate. Pe de alt\u0103 parte, deoarece multe procese interne \u0219i caracteristici ale implement\u0103rii acestui model sunt ascunse utilizatorului mediului de execu\u021bie AWS Lambda, unele reguli acceptate \u00een mod obi\u0219nuit privind securitatea \u00een cloud \u00ee\u0219i pierd relevan\u021ba.<\/p>\n<p><\/p>\n<p>Ca majoritatea serviciilor AWS, Lambda este furnizat pe principiul responsabilit\u0103\u021bii comune \u00eentre AWS \u0219i client \u00een ceea ce prive\u0219te securitatea \u0219i conformitatea normativ\u0103. Acest principiu reduce sarcina opera\u021bional\u0103 asupra clientului, deoarece AWS \u00ee\u0219i asum\u0103 responsabilit\u0103\u021bile de \u00eentre\u021binere, administrare \u0219i control al componentelor serviciului \u2014 de la sistemul de operare al gazdei \u0219i nivelul de virtualizare p\u00e2n\u0103 la securitatea fizic\u0103 a infrastructurii. <\/p>\n<p><\/p>\n<p>Dac\u0103 vorbim specific despre AWS Lambda, AWS se ocup\u0103 de gestionarea infrastructurii de baz\u0103, a serviciilor conexe, a sistemului de operare \u0219i a platformei aplica\u021biilor. \u00cen timp ce clientul este responsabil pentru securitatea codului s\u0103u, stocarea datelor confiden\u021biale, controlul accesului la acestea, precum \u0219i la serviciul \u0219i resursele Lambda (Identity and Access Management, IAM), inclusiv \u00een cadrul func\u021biilor utilizate.<\/p>\n<p><\/p>\n<p>Diagrama de mai jos prezint\u0103 modelul de responsabilitate comun\u0103 aplicabil AWS Lambda. Domeniul de responsabilitate al AWS este marcat cu portocaliu, iar responsabilitatea clientului este marcat\u0103 cu albastru. A\u0219a cum vede\u021bi, AWS \u00ee\u0219i asum\u0103 mai multe responsabilit\u0103\u021bi pentru aplica\u021biile desf\u0103\u0219urate pe serviciu.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Analiza detaliat\u0103 a AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/d1f324929e3b03d454a0cd9842844cb4.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><em>Modelul de responsabilitate comun\u0103 aplicabil AWS Lambda<\/em><\/p>\n<p><\/p>\n<h3 id=\"sreda-vypolneniya-lambda\">Mediul de execu\u021bie Lambda<\/h3>\n<p><\/p>\n<p>Principalul avantaj al Lambda este c\u0103, execut\u00e2nd o func\u021bie \u00een numele dumneavoastr\u0103, serviciul aloc\u0103 singur resursele necesare. Pute\u021bi s\u0103 nu v\u0103 pierde\u021bi timpul \u0219i energia administr\u00e2nd sistemele \u0219i s\u0103 v\u0103 concentra\u021bi pe logica de afaceri \u0219i scrierea codului.<\/p>\n<p><\/p>\n<p>Serviciul Lambda este \u00eemp\u0103r\u021bit \u00een dou\u0103 planuri. Primul este planul de control. Conform Wikipediei, planul de control (control plane) este partea re\u021belei responsabil\u0103 pentru transportul semnalului \u0219i rutare. Este componenta principal\u0103, lu\u00e2nd decizii globale privind alocarea, \u00eentre\u021binerea \u0219i distribu\u021bia sarcinilor de lucru. \u00cen plus, planul de control serve\u0219te ca topologie de re\u021bea a furnizorului de solu\u021bii, responsabil\u0103 pentru rutarea \u0219i gestionarea traficului.<\/p>\n<p><\/p>\n<p>Al doilea plan este planul de date. Acesta, la fel ca \u0219i planul de control, are sarcinile sale. Planul de control ofer\u0103 API-uri pentru gestionarea func\u021biilor (CreateFunction, UpdateFunctionCode) \u0219i controleaz\u0103 interac\u021biunea Lambda cu celelalte servicii AWS. Planul de date gestioneaz\u0103 apelurile API (Invoke API), care declan\u0219eaz\u0103 func\u021biile Lambda. Dup\u0103 apelarea func\u021biei, planul de control aloc\u0103 sau selecteaz\u0103 un mediu de execu\u021bie existent, preg\u0103tit anterior pentru aceast\u0103 func\u021bie, \u0219i apoi execut\u0103 codul \u00een acesta.<\/p>\n<p><\/p>\n<p>AWS Lambda suport\u0103 mai multe limbaje de programare, inclusiv Java 8, Python 3.7, Go, NodeJS 8, .NET Core 2 \u0219i altele, prin intermediul mediilor de execu\u021bie corespunz\u0103toare. AWS le actualizeaz\u0103 regulat, distribuie corec\u021bii de securitate \u0219i efectueaz\u0103 alte opera\u021biuni de \u00eentre\u021binere a acestor medii. Lambda permite utilizarea \u0219i altor limbaje cu condi\u021bia ca utilizatorul s\u0103 implementeze singur mediul de execu\u021bie relevant. \u00cen acest caz, va trebui s\u0103 te ocupi \u0219i de \u00eentre\u021binerea sa, inclusiv de monitorizarea securit\u0103\u021bii.<\/p>\n<p><\/p>\n<p><strong>Cum func\u021bioneaz\u0103 toate acestea \u0219i cum va executa serviciul func\u021biile tale?<\/strong><\/p>\n<p><\/p>\n<p>Fiecare func\u021bie ruleaz\u0103 \u00eentr-unul sau mai multe medii dedicate, care exist\u0103 doar pe durata ciclului de via\u021b\u0103 al acestei func\u021bii \u0219i apoi sunt distruse. \u00cen fiecare mediu, se execut\u0103 simultan doar un apel, dar acesta este reutilizat dac\u0103 apar mai multe apeluri consecutive ale acelea\u0219i func\u021bii. Toate mediile de execu\u021bie ruleaz\u0103 pe ma\u0219ini virtuale cu virtualizare hardware \u2014 pe ceea ce se nume\u0219te microVM. Fiecare microVM este atribuit unui anumit cont AWS \u0219i poate fi utilizat de mai multe ori de c\u0103tre medii pentru a executa diverse func\u021bii \u00een acest cont. MicroVM-urile sunt grupate \u00een module ale platformei hardware Lambda Worker, de\u021binute \u0219i gestionate de AWS. Acela\u0219i mediu de execu\u021bie nu poate fi utilizat de diferite func\u021bii, la fel cum microVM-urile sunt unice pentru diferite conturi AWS.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Analiza detaliat\u0103 a AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/9c4fd7aeaf3b582aed5fa8a6a876c315.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><em>Modelul de izolare \u00een AWS Lambda<\/em><\/p>\n<p><\/p>\n<p>Izolarea mediilor de execu\u021bie este realizat\u0103 prin intermediul mai multor mecanisme. La cel mai \u00eenalt nivel, fiecare mediu are copii separate ale urm\u0103toarelor componente:<\/p>\n<p><\/p>\n<ul>\n<li>Codul func\u021biei<\/li>\n<li>Orice straturi Lambda selectate pentru func\u021bie<\/li>\n<li>Mediul de execu\u021bie al func\u021biei<\/li>\n<li>Spa\u021biul utilizator minim bazat pe Amazon Linux<\/li>\n<\/ul>\n<p><\/p>\n<p>Pentru izolarea diferitelor medii de execu\u021bie, se aplic\u0103 urm\u0103toarele mecanisme:<\/p>\n<p><\/p>\n<ul>\n<li>cgroups \u2014 restric\u021bionarea accesului la resursele CPU, memorie, l\u0103\u021bimea de band\u0103 a stoc\u0103rii \u0219i re\u021bea pentru fiecare mediu de execu\u021bie;<\/li>\n<li>namespaces \u2014 gruparea ID-urilor proceselor, ID-urilor utilizatorilor, interfe\u021belor de re\u021bea \u0219i altor resurse gestionate de nucleul Linux. Fiecare mediu de execu\u021bie func\u021bioneaz\u0103 \u00een propriul spa\u021biu de nume;<\/li>\n<li>seccomp-bpf \u2014 restric\u021bionarea apelurilor de sistem care pot fi utilizate \u00een mediu de execu\u021bie;<\/li>\n<li>iptables \u0219i tabele de rutare \u2014 izolarea mediilor de execu\u021bie una de cealalt\u0103;<\/li>\n<li>chroot \u2014 furnizarea unui acces limitat la sistemul de fi\u0219iere de baz\u0103.<\/li>\n<\/ul>\n<p><\/p>\n<p>\u00cen combina\u021bie cu tehnologiile proprietare de izolare AWS, mecanismele enumerate garanteaz\u0103 o separare fiabil\u0103 a mediilor de execu\u021bie. Mediile astfel izolate nu pot accesa sau modifica datele altor medii.<\/p>\n<p><\/p>\n<p>De\u0219i mai multe medii de execu\u021bie ale acelea\u0219i cont AWS pot rula pe aceea\u0219i microVM, \u00een nicio \u00eemprejurare microVM-urile nu pot fi partajate \u00eentre conturi diferite AWS. Pentru izolarea microVM-urilor, AWS Lambda utilizeaz\u0103 doar dou\u0103 mecanisme: instan\u021bele EC2 \u0219i Firecracker. Izolarea oaspe\u021bilor \u00een Lambda bazat\u0103 pe instan\u021bele EC2 este aplicat\u0103 din 2015. Firecracker este un nou hipervizor open-source, special conceput de AWS pentru sarcini de lucru serverless, lansat \u00een 2018. Echipamentele fizice pe care ruleaz\u0103 microVM-urile sunt partajate \u00eentre sarcini de lucru ale diferitelor conturi.<\/p>\n<p><\/p>\n<h3 id=\"sohranenie-sred-i-sostoyaniy-processov\">P\u0103strarea mediilor \u0219i st\u0103rilor proceselor<\/h3>\n<p><\/p>\n<p>De\u0219i mediile de execu\u021bie Lambda sunt unice pentru diferite func\u021bii, aceea\u0219i func\u021bie poate fi apelat\u0103 din nou, adic\u0103 mediu de execu\u021bie poate exista c\u00e2teva ore \u00eenainte de a fi distrus.<\/p>\n<p><\/p>\n<p>Fiecare mediu de execu\u021bie Lambda are, de asemenea, un sistem de fi\u0219iere cu permisiuni de scriere, accesibil prin directorul \/tmp. Con\u021binutul acestuia nu poate fi accesat din alte medii de execu\u021bie. \u00cen ceea ce prive\u0219te p\u0103strarea st\u0103rilor proceselor, fi\u0219ierele scrise \u00een \/tmp exist\u0103 pe \u00eentreaga durat\u0103 de via\u021b\u0103 a mediului de execu\u021bie. Astfel, este posibil\u0103 acumularea rezultatelor mai multor apeluri, ceea ce este deosebit de util pentru opera\u021biuni costisitoare, cum ar fi \u00eenc\u0103rcarea modelelor de \u00eenv\u0103\u021bare automat\u0103.<\/p>\n<p><\/p>\n<h2 id=\"peredacha-dannyh-vyzovov\">Transmiterea datelor apelurilor<\/h2>\n<p><\/p>\n<p>Interfa\u021ba Invoke API poate fi activat\u0103 \u00een dou\u0103 moduri: modul eveniment \u0219i modul \"cerere - r\u0103spuns\". \u00cen modul eveniment, apelul este ad\u0103ugat \u00eentr-o coad\u0103 pentru executarea ulterioar\u0103. \u00cen modul \"cerere - r\u0103spuns\", func\u021bia este apelat\u0103 imediat cu payload-ul furnizat, dup\u0103 care se returneaz\u0103 un r\u0103spuns. \u00cen ambele cazuri, func\u021bia este executat\u0103 \u00een mediu Lambda, dar cu diferite c\u0103i de payload.<\/p>\n<p><\/p>\n<p>\u00cen timpul apelurilor de tip \u201erequest-response\u201d, payload-ul provine de la API-ul de procesare a cererilor (API Caller), cum ar fi AWS API Gateway sau AWS SDK, la un load balancer \u0219i apoi la serviciul de invocare Lambda (Invoke Service). Acesta din urm\u0103 determin\u0103 mediul adecvat pentru executarea func\u021biei \u0219i transmite payload-ul pentru a finaliza apelul. Load balancer-ul prime\u0219te traficul cu protec\u021bie TLS prin Internet. Traficul \u00een cadrul serviciului Lambda \u2014 dup\u0103 load balancer \u2014 trece printr-un VPC intern \u00een anumite regiuni AWS.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Analiza detaliat\u0103 a AWS Lambda\" src=\"\/wp-content\/uploads\/2019\/09\/57f97517597f51d83890869b8385074a.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><em>Modelul de procesare a apelurilor AWS Lambda: modul \u201erequest-response\u201d<\/em><\/p>\n<p><\/p>\n<p>Apelurile bazate pe evenimente pot fi executate imediat sau ad\u0103ugate \u00een coad\u0103. \u00cen anumite cazuri, coada este implementat\u0103 prin serviciul Amazon SQS (Amazon Simple Queue Service), care transmite apelurile c\u0103tre serviciul de invocare Lambda printr-un proces intern de polling. Traficul transferat este protejat prin TLS, iar criptarea suplimentar\u0103 a datelor stocate \u00een Amazon SQS nu este prev\u0103zut\u0103. <\/p>\n<p><\/p>\n<p>Apelurile bazate pe evenimente nu returneaz\u0103 r\u0103spunsuri \u2014 orice informa\u021bie de r\u0103spuns este pur \u0219i simplu ignorat\u0103 de Lambda Worker. Apelurile bazate pe evenimente din Amazon S3, Amazon SNS, CloudWatch \u0219i alte surse sunt procesate de serviciul Lambda \u00een modul de evenimente. Apelurile din fluxurile Amazon Kinesis \u0219i DynamoDB, apelurile din cozile SQS, load balancer-ul aplica\u021biilor \u0219i API Gateway sunt procesate \u00een modul \u201erequest-response\u201d.<\/p>\n<p><\/p>\n<h3 id=\"monitoring\">Monitorizare<\/h3>\n<p><\/p>\n<p>Pute\u021bi monitoriza \u0219i audita func\u021biile Lambda folosind diferite mecanisme \u0219i servicii AWS, inclusiv urm\u0103toarele.<\/p>\n<p><\/p>\n<p><strong>Amazon CloudWatch<\/strong><br \/>\nColecteaz\u0103 diverse statistici, cum ar fi num\u0103rul de cereri, durata de execu\u021bie a cererilor \u0219i num\u0103rul de cereri care au e\u0219uat.<\/p>\n<p><\/p>\n<p><strong>Amazon CloudTrail<\/strong><br \/>\nPermite \u00eenregistrarea, monitorizarea continu\u0103 \u0219i p\u0103strarea informa\u021biilor despre activit\u0103\u021bile din contul dvs., legate de infrastructura AWS. Ve\u021bi avea o cronologie complet\u0103 a ac\u021biunilor efectuate prin AWS Management Console, AWS SDK, instrumente de linie de comand\u0103 \u0219i alte servicii AWS.<\/p>\n<p><\/p>\n<p><strong>AWS X-Ray<\/strong><br \/>\nOfer\u0103 vizibilitate complet\u0103 asupra tuturor etapelor proces\u0103rii cererilor din aplica\u021bia dvs., pe baza unei h\u0103r\u021bi a componentelor sale interne. Permite analizarea aplica\u021biilor \u00een timpul dezvolt\u0103rii \u0219i \u00een medii de produc\u021bie.<\/p>\n<p><\/p>\n<p><strong>AWS Config<\/strong><br \/>\nVe\u021bi putea urm\u0103ri modific\u0103rile configura\u021biei func\u021biilor Lambda (inclusiv \u0219tergerea acestora) \u0219i a medii de execu\u021bie, etichetelor, numelui handler-ului, dimensiunii codului, aloc\u0103rii memoriei, set\u0103rilor de timeout \u0219i parametrilor de paralelism, precum \u0219i a rolului de execu\u021bie Lambda IAM, subre\u021belei \u0219i leg\u0103turii grupurilor de securitate.<\/p>\n<p><\/p>\n<h3 id=\"zaklyuchenie\">Concluzie<\/h3>\n<p><\/p>\n<p>AWS Lambda ofer\u0103 un set puternic de instrumente pentru crearea de aplica\u021bii sigure \u0219i scalabile. Multe metode de asigurare a securit\u0103\u021bii \u0219i conformit\u0103\u021bii \u00een AWS Lambda nu difer\u0103 de cele utilizate \u00een celelalte servicii AWS, de\u0219i exist\u0103 unele excep\u021bii. La momentul din martie 2019, Lambda respect\u0103 cerin\u021bele SOC 1, SOC 2, SOC 3, PCI DSS, legea american\u0103 referitoare la continuitatea \u0219i responsabilitatea asigur\u0103rilor medicale (HIPAA) \u0219i alte reglement\u0103ri. A\u0219adar, atunci c\u00e2nd lua\u021bi \u00een considerare implementarea unei noi aplica\u021bii, lua\u021bi \u00een considerare serviciul AWS Lambda \u2013 poate fi solu\u021bia perfect\u0103 pentru nevoile dumneavoastr\u0103.<\/p>\n<p>Sursa: <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.2.1 - 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\/ro\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\/ro\/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\udd47Analiza detaliat\u0103 a AWS Lambda | ProHoster","description":"Traducerea articolului a fost preg\u0103tit\u0103 special pentru studen\u021bii cursului \u201eServicii Cloud\u201d. Sunte\u021bi interesat s\u0103 v\u0103 dezvolta\u021bi \u00een acest domeniu?","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/detalnyj-razbor-aws-lambda","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\/ro\/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\/ro\/wp-json\/wp\/v2\/posts\/37937","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=37937"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/37937\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/28468"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=37937"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=37937"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=37937"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}