Function-as-a-Service (FaaS) is the right architectural choice when your workload is event-driven, short-lived, stateless, and bursty — and the wrong one when it runs continuously, holds state, or serves steady high-volume traffic around the clock. That is the practical boundary most teams need, and it can be evaluated systematically rather than guessed at. This guide lays out a six-dimension framework for scoring a specific workload against FaaS's inherent strengths and weaknesses, so you can decide with evidence rather than instinct.
Understanding Function-as-a-Service (FaaS) Fundamentals
FaaS is an event-driven computing model in which the cloud provider handles servers, patching, and scaling, and your code runs only in response to a trigger. As BMC's technical explainer describes it, functions are set in motion by specific events such as message queues or HTTP requests, and the model follows pay-as-you-go billing where you pay only when the function is used. AWS Lambda, Azure Functions, and Google Cloud Run functions are the best-known options, according to DevPro Journal's practical guide for independent software vendors.
The mechanics matter for the decision. Baeldung's computer science overview explains that when an event triggers a function, the platform dynamically provisions CPU, memory, and other resources, executes the function in an isolated environment, and automatically scales to handle demand fluctuations. Google Cloud's documentation adds that once the task completes, resources are released immediately and you are billed only for the milliseconds your code ran. That provisioning-on-demand, release-on-completion cycle is the root of both FaaS's cost advantage and its performance trade-offs.
Workload Characteristics: Event-Driven, Short-Lived, and Stateless
Three workload characteristics dominate the suitability question. The first is the trigger. FaaS fits tasks initiated by discrete events — HTTP requests, database updates, message queues, or scheduled timers, per Baeldung's account of event sources. A process that must run continuously, listening or streaming without a triggering event, does not map onto the model.
The second is duration. AWS's own decision guide comparing Lambda with Fargate frames Lambda as event-driven functions suited to short-lived, on-demand tasks, while a comparison published by Pump lists Lambda's maximum runtime at 15 minutes against no limit for a container. Edge Delta's engineering analysis likewise characterizes Lambda as ideal for "sprinting" tasks with minimal startup latency. Work that outlives the runtime ceiling belongs in a container-based pattern.
The third is state. FaaS functions are stateless and ephemeral: they do not retain data between invocations, so any stateful application needs external storage or a different architecture entirely. This is not a limitation to work around casually — it shapes how you decompose the system before you choose the runtime.




