Calcul fără server
Ce este Functions as a Service (FaaS)?
Published: octombrie 28, 2024
Last updated: noiembrie 26, 2024
Ce este modelul Functions as a Service (FaaS)?
Functions as a Service sau FaaS este un model de execuție de calcul fără server care permite dezvoltatorilor să implementeze și să execute cu ușurință aplicații fără a fi nevoie să gestioneze serverele. Pe scurt, cu FaaS, scrieți codul în timp ce furnizorul de cloud gestionează automat implementarea serverului, alocarea resurselor și gestionarea mediului.
Cum funcționează FaaS?
În modelul FaaS, dezvoltatorii scriu cod sub formă de funcții, care sunt fragmente mici, independente, concepute să efectueze o singură operațiune. Aceste funcții sunt inițiate de evenimente, de exemplu, solicitări HTTP, modificări ale bazei de date sau un eveniment de încărcare a fișierului. Când are loc un eveniment, furnizorul de cloud alocă imediat resursele necesare funcției și le eliberează după ce evenimentul funcției este finalizat. Acest model de calcul permite implementarea fără server, bazată pe evenimente, ceea ce înseamnă taxarea per execuție a funcției.
Unii furnizori FaaS cunoscuți sunt Amazon AWS Lambda, Microsoft Azure Functions și Google Cloud Functions.
Care este diferența dintre FaaS și SaaS?
FaaS și SaaS sunt modele de implementare în cloud-computing mediu, chiar dacă au funcții diferite.
- FaaS: Oferă o platformă pentru executarea codului personalizat declanșat de evenimente specifice. Dezvoltatorii de aplicații controlează codul și infrastructura, în timp ce scalarea este gestionată automat și la cel mai micro nivel. Costurile sunt determinate de resursele reale utilizate (plătiți pe măsură ce utilizați).
- SaaS: Oferă soluții software preconfigurate printr-o infrastructură cloud. Utilizatorii lucrează cu interfața dată, dar au un control limitat asupra infrastructurii subiacente. Acest lucru se datorează faptului că scalabilitatea este în mod normal limitată în planurile de abonament, în timp ce costurile sunt în mod normal percepute pe abonamentele.
Care este principalul beneficiu al FaaS?
FaaS este un tip de calcul fără server în care dezvoltatorii se ocupă în mod special de scrierea codului și pot avea foarte puțin control asupra serverelor. Permite ajustarea scării activității și se bazează pe un mecanism automat de taxare pentru utilizare ca funcție a volumului de lucru într-o aplicație.
Care sunt dezavantajele FaaS?
În ciuda beneficiilor care vin cu FaaS, este esențial să discutăm despre unele dintre dezavantaje.
- Blocare de către furnizor: Pot exista variații între modul în care FaaS este implementat între diferiți furnizori de cloud, ceea ce ar putea crea dificultăți în mutarea aplicației.
- Porniri la rece: Timpul inițial de pornire a funcțiilor latente poate fi prelungit, ceea ce duce la întârzieri în feedback, în ceea ce privește persoanele.
- Depanare și monitorizare: O aplicație distribuită fără server poate fi mai complexă de depanat și monitorizat decât o aplicație monolitică.
- Lipsă de stare: Păstrarea stării în execuțiile funcției este destul de complexă și ar trebui depus un efort suplimentar la proiectarea unei aplicații.
În ciuda acestor dezavantaje, FaaS este utilizat pe scară largă la construirea de aplicații de înaltă tehnologie, scalabile și rentabile, în special în cadrele axate pe evenimente și pe client.
Concluzie
FaaS este o extensie a arhitecturii fără server, unde dezvoltatorii pot construi și implementa aplicații fără a achiziționa servere. FaaS ascunde infrastructura pentru utilizarea scalării automate, a cercului de dezvoltare și a costului bazat pe resurse. Puteți implementa FaaS în dezvoltarea de soluții cloud scalabile și bazate pe evenimente, cu toate acestea nu este potrivit pentru toate tipurile de aplicații.