Home / Cloud-native applications / Compute comparison

Serverless vs containers
vs Kubernetes on AWS.

Choose a compute model from real demand, execution, recovery and team constraints—not a platform trend or an assumed maturity ladder.

The short answer

There is no universal progression from functions to Kubernetes.

Serverless is useful when work is bounded and demand is variable. Managed containers fit longer-running services and established runtimes. Kubernetes earns its operational cost when a genuine multi-workload platform need exists. Virtual machines remain valid where compatibility or migration constraints require host control. Begin with the workload, not the destination.

AWS compute option comparison

Match the delivery shape to the evidence you have.

Scroll horizontally to compare the options →

Delivery shapeUseful whenPrimary advantageEvidence to demand
Serverless functions and eventsShort-lived APIs, scheduled work, file processing and variable or event-driven demandLow infrastructure management and fine-grained scalingExecution limits, event retries, concurrency, observability and service coupling
Managed containersWeb services, workers and existing runtimes that benefit from portable packagingRuntime control without managing a cluster or individual serversImage lifecycle, task sizing, networking, scaling signals and startup behaviour
Managed application platformConventional web applications or APIs with a standard deployment shapeA small operational surface and familiar application release modelPlatform constraints, scaling assumptions and an untested exit route
KubernetesSeveral teams or workloads with a justified need for its APIs and ecosystemA consistent platform for complex container estates and specialist workloadsCreating a platform team and operational burden for one ordinary application
Virtual machinesOperating-system dependencies, commercial software or staged migration needing host controlCompatibility and an incremental route away from existing infrastructureCarrying patching, images, capacity and recovery responsibility without a plan
Five questions before choosing compute

Let workload constraints eliminate the wrong options.

D/01

How does demand arrive?

Measure baseline, peaks, duration, concurrency, latency and scheduled or event-driven work using representative traffic and jobs.

D/02

What must the runtime do?

Record execution duration, protocols, dependencies, local state, hardware, background processing and operating-system constraints.

D/03

How should it fail and recover?

Define retry safety, dependency behaviour, availability, data-loss tolerance, restore, rollback and failure isolation.

D/04

Who will operate it?

Match deployment, security, observability and incident responsibilities to the real skills and capacity of the owning team.

D/05

What is the whole-life cost?

Include cloud consumption, environments, logs, support, platform engineering, patching and the cost of changing the architecture later.

The trade-offs behind the labels

Managed does not mean responsibility disappears.

SERVERLESS

Design the event contract

Functions remove server management but retain application responsibility. Model duplicate events, retries, partial failure, concurrency, permissions, cold starts and observability across asynchronous paths.

CONTAINERS

Own the service lifecycle

Managed container services reduce cluster work, but images, base dependencies, task sizing, networking, scaling, secrets, health checks and deployment rollback remain deliberate choices.

KUBERNETES

Fund a platform capability

Kubernetes introduces powerful APIs and a broad ecosystem alongside policy, upgrades, workload identity, ingress, observability and platform support. Name the platform owner before naming the cluster.

Controls that apply to every option

Architecture is the evidence behind continuing responsibilities.

01

Operational excellence

Versioned change, observable releases, actionable runbooks and learning from incidents and usage.

02

Security

Least privilege, data protection, audit, vulnerability response and an exercised incident path.

03

Reliability

Explicit service and recovery objectives, tested backups, dependency behaviour and safe rollback.

04

Performance and cost

Representative load, useful latency measures, scaling signals, budgets and cost per useful transaction.

The official AWS Well-Architected Framework provides a structured way to review these trade-offs across the workload lifecycle.

Frequently asked questions

AWS compute architecture FAQ.

Q/01

Is serverless always cheaper than containers on AWS?

No. Serverless can be economical for intermittent, variable or event-driven work, but duration, concurrency, invocation volume, data transfer and observability still matter. A continuously busy workload may cost less or behave more predictably on a right-sized managed container service. Compare representative demand and include operating effort.

Q/02

When should an application use managed containers?

Managed containers suit web services, workers and existing runtimes that benefit from portable packaging or need more execution control than a function provides. They are particularly useful when the team wants container consistency without owning Kubernetes control planes, node groups and a larger platform toolchain.

Q/03

When is Kubernetes justified?

Kubernetes is most defensible when several teams or workloads already need its APIs, ecosystem, scheduling model, policy controls or a consistent platform across environments. It is rarely justified by the presence of one conventional web application alone because it creates additional release, security, observability and platform responsibilities.

Q/04

Do microservices require Kubernetes?

No. Services can run on managed container platforms, serverless functions, managed application services or other compute models. Microservice boundaries and runtime orchestration are separate decisions. Choose service boundaries for independent ownership, release, scaling or failure isolation, then select the lightest runtime that supports them.

Q/05

Can one application combine serverless and containers?

Yes. A web application might run as a managed container while scheduled jobs, file processing or asynchronous events use serverless functions and queues. A mixed architecture is useful when each part has a distinct demand or execution shape, provided monitoring, identity, data ownership and failure handling remain coherent.

Choose from workload evidence

Bring one application, not a target platform.

ORBN can profile the workload, compare viable AWS shapes and prove the weakest performance, recovery, security or cost assumption.