FaaS (ang. Function as a Service, pol. funkcje jako usługa) – model usług przetwarzania w chmurze, w którym aplikacja jest dzielona na funkcje uruchamiane w reakcji na zdarzenia (np. żądania HTTP, komunikaty z kolejki, zmiany w zasobach), a dostawca platformy zapewnia środowisko wykonawcze, automatyczne skalowanie oraz rozliczanie zależne od liczby wywołań i czasu wykonania, bez konieczności samodzielnego zarządzania serwerami i systemem operacyjnym[1][2]. W praktyce FaaS bywa traktowane jako jeden z elementów podejścia serverless (obok m.in. usług typu Backend as a Service), które ogranicza potrzebę utrzymywania „zawsze włączonego” komponentu serwerowego w tradycyjnej architekturze aplikacji[3][4].

Charakterystyka

edytuj
  • wyzwalanie zdarzeniowe (event-driven) – funkcje są uruchamiane na podstawie zdarzeń lub żądań (np. HTTP) i mogą być automatycznie replikowane na czas obsługi ruchu[1][4],
  • krótkotrwałość i bezstanowość – instancje funkcji są zwykle uruchamiane na czas obsługi wywołania i kończone po wykonaniu; platformy promują model bezstanowy (stan trwały deleguje się do usług zewnętrznych, np. baz danych lub kolejek)[1][3],
  • rozliczanie „pay-as-you-go – naliczanie kosztów jest powiązane z faktycznym wykonaniem (czasem uruchomienia i liczbą wywołań), co odróżnia FaaS od modeli wymagających ciągłej rezerwacji zasobów[1][4],
  • ograniczenia i wyzwania – typowo wskazuje się m.in. opóźnienia pierwszego uruchomienia (cold start), ograniczony czas wykonywania oraz zależność od usług i narzędzi dostawcy (vendor lock-in)[3][4].

Przykłady

edytuj

Porównanie AWS Lambda i Azure Functions

edytuj

Wśród komercyjnych usług typu FaaS często porównuje się rozwiązania oferowane przez Amazon Web Services (AWS) oraz Microsoft Azure, ponieważ są to dwaj najwięksi dostawcy usług „cloud infrastructure” (AWS jako lider, Azure jako drugi dostawca)[9][10]. Obie platformy oferują dojrzałe, natywne usługi FaaS (m.in. AWS Lambda i Azure Functions), często wskazywane jako przykładowe platformy FaaS oraz wykorzystywane jako punkty odniesienia w badaniach porównawczych[5][11][12][13].

Porównaniu podlegają głównie trzy podstawowe obszary projektowye platform FaaS[14][15][16][17][18][19][20][21]:

  1. model wywołania i integracji z usługami chmury
  2. zachowanie wydajnościowe pod obciążeniem (automatyczne skalowanie, współbieżność oraz mechanizmy ograniczania opóźnień związanych z cold start)
  3. integracja sieciowa z zasobami prywatnymi (np. w ramach VPC/VNet).

AWS Lambda uruchamia kod w reakcji na zdarzenia pochodzące z usług AWS (tzw. event sources), a skalowanie odbywa się przez zwiększanie liczby równoległych środowisk wykonawczych (execution environments)[18]. Azure Functions opiera się na modelu triggerów i bindingów: trigger określa sposób wywołania funkcji (funkcja ma dokładnie jeden trigger), a bindingi ułatwiają pobieranie danych wejściowych i zapisywanie danych wyjściowych do usług platformy bez rozbudowanego kodu integracyjnego[22].

W AWS Lambda pojęcie współbieżności (concurrency) opisuje liczbę równocześnie obsługiwanych wywołań funkcji; każde współbieżne wywołanie oznacza osobne środowisko wykonawcze[18]. AWS udostępnia mechanizmy sterowania współbieżnością, w tym reserved concurrency oraz provisioned concurrency w celu ograniczania opóźnień zimnego startu[18][23]. W Azure Functions zachowanie skalowania i ograniczanie cold start zależy od planu. Plan Premium oferuje m.in. „zawsze gotowe” i wstępnie rozgrzane instancje (always ready / prewarmed) oraz skalowanie zdarzeniowe z wykorzystaniem prewarmed workers[19][24].

AWS Lambda może uzyskać dostęp do zasobów osadzonych w prywatnej sieci w ramach Amazon VPC przez podłączenie funkcji do odpowiednich podsieci (subnetów)[20]. Azure Functions w planie Premium zapewnia łączność z siecią wirtualną (Virtual Network connectivity) jako jedną z cech hostingu przeznaczonego dla scenariuszy produkcyjnych o wyższych wymaganiach.[19]

Cecha AWS Lambda[a] Azure Functions[a]
Dostawca Amazon Web Services Microsoft Azure
Model integracji Zdarzenia z usług AWS (event sources); środowiska wykonawcze skalowane współbieżnością.[18] Triggery i bindingi; funkcja ma dokładnie jeden trigger.[22]
Maksymalny czas pojedynczego uruchomienia (timeout) 900 s (15 min).[25] Zależny od planu: Consumption domyślnie 5 min, maks. 10 min; w Flex Consumption/Premium/Dedicated brak narzuconego maksimum functionTimeout (z zastrzeżeniami).[24]
Maks. czas na odpowiedź dla wywołań HTTP Zależny od sposobu wystawienia HTTP (np. usługi pośrednie); limit 900 s dotyczy samej funkcji.[25] 230 s na odpowiedź dla HTTP-trigger, niezależnie od functionTimeout.[24]
Ograniczanie cold start Provisioned concurrency (wstępnie zainicjalizowane środowiska).[23] Plan Premium: always ready i prewarmed instances.[19]
Dostęp do zasobów w sieci prywatnej Podłączenie funkcji do Amazon VPC.[20] Plan Premium: łączność z siecią wirtualną.[19]
Bezpłatna pula 1 mln wywołań + 400 000 GB-s / miesiąc.[26] 1 mln wywołań + 400 000 GB-s / miesiąc (plan Consumption, na subskrypcję).[27]

Zobacz też

edytuj

Uwagi

edytuj
  1. a b Dane o limitach i zasobach aktualne na dzień 22.01.2026

Przypisy

edytuj
  1. a b c d Function as a Service (FaaS) [online], glossary.cncf.io [dostęp 2026-01-14] (ang.).
  2. Cloud Native Security Whitepaper (Version 2) [online], cncf.io [dostęp 2026-01-14] (ang.).
  3. a b c Mike Roberts, Serverless Architectures [online], martinfowler.com, 22 maja 2018 [dostęp 2026-01-14] (ang.).
  4. a b c d Hossein Shafiei, Ahmad Khonsari, Payam Mousavi, Serverless Computing: A Survey of Opportunities, Challenges, and Applications, „arxiv”, 2021, arXiv:1911.01296 [dostęp 2026-01-14] (ang.).
  5. a b What is AWS Lambda? [online], AWS Documentation [dostęp 2026-01-22] (ang.).
  6. What is Azure Functions? [online], learn.microsoft.com [dostęp 2026-01-14] (ang.).
  7. Cloud Run functions [online], cloud.google.com [dostęp 2026-01-14] (ang.).
  8. Apache OpenWhisk [online], openwhisk.apache.org [dostęp 2026-01-14] (ang.).
  9. Cloud Market Share Trends - Big Three Together Hold 63% while Oracle and the Neoclouds Inch Higher [online], Synergy Research Group, 19 listopada 2025 [dostęp 2026-01-22] (ang.).
  10. Global cloud infrastructure spending rose 21% in Q1 2025 [online], Omdia, 12 czerwca 2025 [dostęp 2026-01-22] (ang.).
  11. Azure Functions documentation [online], Microsoft Learn [dostęp 2026-01-22] (ang.).
  12. Thomas Bodner, Theo Radig, David Justen, Daniel Ritter, Tilmann Rabl, An Empirical Evaluation of Serverless Cloud Infrastructure for Large-Scale Data Processing [online], OpenProceedings.org, 2025 [dostęp 2026-01-22] (ang.).
  13. Rui Deng, Benchmarking of Real-world Serverless Application Performance Across Cloud Providers: An In-depth Understanding of Reasons for Differences [online], Chalmers University of Technology, 2022 [dostęp 2026-01-22] (ang.).
  14. Paul Castro, Vatche Ishakian, Vinod Muthusamy, Aleksander Slominski, The server is dead, long live the server: Rise of Serverless Computing, Overview of Current State and Future Trends in Research and Industry, „arXiv”, 7 czerwca 2019, arXiv:1906.02888 [dostęp 2026-01-22] (ang.).
  15. Muhammed Golec i inni, Cold Start Latency in Serverless Computing: A Systematic Review, Taxonomy, and Future Directions, „arXiv”, arXiv:2310.08437 [dostęp 2026-01-22] (ang.).
  16. Invoking Lambda with events from other AWS services [online], Amazon Web Services – AWS Lambda Developer Guide [dostęp 2026-01-22] (ang.).
  17. Triggers and bindings in Azure Functions [online], Microsoft Learn [dostęp 2026-01-22] (ang.).
  18. a b c d e Understanding Lambda function scaling [online], Amazon Web Services – AWS Lambda Developer Guide [dostęp 2026-01-22] (ang.).
  19. a b c d e Azure Functions Premium plan [online], Microsoft Learn [dostęp 2026-01-22] (ang.).
  20. a b c Giving Lambda functions access to resources in an Amazon VPC [online], Amazon Web Services – AWS Lambda Developer Guide [dostęp 2026-01-22] (ang.).
  21. Azure Functions networking options [online], Microsoft Learn [dostęp 2026-01-22] (ang.).
  22. a b Triggers and bindings in Azure Functions [online], Microsoft Learn [dostęp 2026-01-19] (ang.).
  23. a b Configuring reserved concurrency for a function [online], Amazon Web Services Documentation [dostęp 2026-01-19] (ang.).
  24. a b c Azure Functions hosting options [online], Microsoft Learn [dostęp 2026-01-19] (ang.).
  25. a b Lambda quotas [online], Amazon Web Services Documentation [dostęp 2026-01-19] (ang.).
  26. AWS Lambda Pricing [online], Amazon Web Services [dostęp 2026-01-19] (ang.).
  27. Azure Functions pricing [online], Microsoft Azure [dostęp 2026-01-19] (ang.).

📚 Artikel Terkait di Wikipedia

Lista skrótów i skrótowców używanych w informatyce

Communication NFS – Network File System NLP – Natural Language Processing NLQ – Near Letter Quality NNTP – Network News Transport Protocol NPTL – Native POSIX Thread