Function as a Service (FaaS) je kategorie služeb cloud computingu, která umožňuje zákazníkům vyvíjet, spouštět a spravovat aplikační funkce, aniž by museli budovat a udržovat infrastrukturu spojenou s vývojem a spuštěním aplikace.
FaaS je klíčovou technologií realizující koncept Serverless computingu.
Na rozdíl od tradičních modelů (jako je IaaS nebo PaaS) má FaaS několik unikátních vlastností:
Proces nasazení a běhu ve FaaS prostředí obvykle následuje tento cyklus:
1. **Napsání funkce:** Vývojář napíše úzký blok kódu (např. funkci pro zpracování platby nebo zmenšení obrázku). 2. **Definice triggeru:** Určí se, co funkci spustí (např. [[cloudevents|CloudEvent]] z fronty zpráv). 3. **Nasazení:** Kód je nahrán k poskytovateli (AWS, Azure, Google Cloud). 4. **Provedení:** Ve chvíli triggeru cloud provider okamžitě vytvoří kontejner, spustí v něm kód a po dokončení kontejner zničí.
| Výhody | Nevýhody |
|---|---|
| Extrémní škálovatelnost: Platforma zvládne 1 i 1 000 000 požadavků bez zásahu administrátora. | Cold Start: První spuštění funkce po delší době může trvat déle (latence). |
| Nízké náklady: Platíte jen za efektivní práci kódu. | Limity zdrojů: Omezená paměť RAM a maximální čas běhu (timeout). |
| Rychlost vývoje: Zaměření pouze na byznys logiku, nikoliv na konfiguraci prostředí. | Komplexita monitoringu: Sledování stovek malých funkcí je náročnější než sledování jednoho serveru. |
— Související termíny: Serverless, CloudEvents, Mikroslužby, IaaS, PaaS.