Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

32 lines
2.2 KiB
Markdown
Raw Permalink Normal View History

2019-08-23 14:22:47 -07:00
---
2023-06-02 21:41:36 -07:00
title_tag: "Pulumi vs. Serverless Framework"
meta_desc: Learn about the major differences between Pulumi and the Serverless Framework, and how Pulumi offers a more holistic approach to writing applications.
title: Serverless Framework
h1: Pulumi vs. Severless Framework
2023-06-08 16:15:52 -07:00
meta_image: /images/docs/meta-images/docs-meta.png
2019-08-23 14:22:47 -07:00
menu:
concepts:
2019-08-23 14:22:47 -07:00
parent: vs
weight: 5
2022-04-06 18:43:54 -07:00
aliases:
- /docs/reference/vs/serverless/
- /docs/intro/vs/serverless/
2019-08-23 14:22:47 -07:00
---
The Serverless Framework is a tool that makes programming AWS Lambda, Azure Functions, and Google Cloud Functions
easier, by removing much of the boilerplate out of the native cloud providers' development experiences. It generates
the YAML and configuration required for functions, and simplifies uploading code packs to the cloud. The Serverless Framework relies on
2019-08-23 14:22:47 -07:00
the cloud provider's APIs or templating solutions for any provisioning or management beyond the functions themselves.
Pulumi is more holistic than the Serverless Framework in its focus. In Pulumi, you write entire applications -- some parts of which may be serverless
2019-08-23 14:22:47 -07:00
functions -- but this might also include containers, databases, cloud services, or even virtual machines. It then uses
an infrastructure-as-code approach to deploy, update, and generally manage these constellations of resources.
Where Serverless Framework treats each function as a configurable entity, Pulumi views the entire program as a cloud native
2019-08-23 14:22:47 -07:00
program. This means in practice that most Serverless Framework solutions also need to involve other solutions -- like
AWS CloudFormation -- and that you as a user are left orchestrating changes in multiple systems.
This often leads to the very "pile of bash scripts" problems that you had sought to solve in the first place.
For a good specific comparison of Pulumi and the Serverless Framework, refer to this example: [the before code using the Serverless Framework](https://serverless.com/blog/serverless-application-for-long-running-process-fargate-lambda/) takes about 38 pages
of explanation, including manual steps and AWS CloudFormation; [the after code using Pulumi](https://github.com/pulumi/examples/tree/master/cloud-js-thumbnailer) is only about 38 lines of code.