Need advice about which tool to choose?Ask the StackShare community!
AWS Lambda vs OpenFaaS: What are the differences?
Key Differences between AWS Lambda and OpenFaaS
AWS Lambda and OpenFaaS are both serverless computing platforms, but they have some key differences that set them apart.
Deployment and Hosting: AWS Lambda is a fully managed service provided by Amazon Web Services, which means that AWS takes care of the underlying infrastructure and hosting. On the other hand, OpenFaaS is an open-source framework that allows you to deploy and host functions on your own infrastructure or on third-party cloud providers.
Programming Languages and Runtimes: AWS Lambda supports a wide range of programming languages, including Node.js, Java, Python, and more. It also allows you to use custom runtimes to run functions in any language. OpenFaaS also supports multiple languages, but it relies on Docker containers, which means you can use any programming language supported by Docker.
Scaling: AWS Lambda automatically scales the number of function instances based on the incoming request volume, allowing you to handle large loads without manual intervention. OpenFaaS also supports scaling, but it requires manual configuration and setup. You need to specify the desired number of replicas to handle the load.
Vendor Lock-in: AWS Lambda is a proprietary service offered by Amazon, which means it ties you to the AWS ecosystem. If you develop functions using Lambda, it may be challenging to migrate them to other cloud providers or hosting platforms. OpenFaaS, being open-source, provides more flexibility in terms of vendor lock-in, as you can deploy functions on different cloud providers or your own infrastructure.
Community and Ecosystem: AWS Lambda has a large and well-established community, along with a comprehensive ecosystem of services and tools provided by AWS. OpenFaaS also has a growing community and ecosystem, but it may not be as extensive as AWS Lambda. Depending on your requirements and preferences, the size and maturity of the community and ecosystem can be an important factor to consider.
Pricing Model: The pricing model for AWS Lambda is based on the number of requests and the compute time consumed by the functions. You only pay for the actual usage of the functions. OpenFaaS, being a self-hosted solution, allows you to choose your infrastructure and hosting providers, which may have different pricing models. It provides more flexibility in terms of cost optimization.
In summary, the key differences between AWS Lambda and OpenFaaS include deployment and hosting, programming languages and runtimes, scaling, vendor lock-in, community and ecosystem, and pricing model.
When adding a new feature to Checkly rearchitecting some older piece, I tend to pick Heroku for rolling it out. But not always, because sometimes I pick AWS Lambda . The short story:
- Developer Experience trumps everything.
- AWS Lambda is cheap. Up to a limit though. This impact not only your wallet.
- If you need geographic spread, AWS is lonely at the top.
Recently, I was doing a brainstorm at a startup here in Berlin on the future of their infrastructure. They were ready to move on from their initial, almost 100% Ec2 + Chef based setup. Everything was on the table. But we crossed out a lot quite quickly:
- Pure, uncut, self hosted Kubernetes — way too much complexity
- Managed Kubernetes in various flavors — still too much complexity
- Zeit — Maybe, but no Docker support
- Elastic Beanstalk — Maybe, bit old but does the job
- Heroku
- Lambda
It became clear a mix of PaaS and FaaS was the way to go. What a surprise! That is exactly what I use for Checkly! But when do you pick which model?
I chopped that question up into the following categories:
- Developer Experience / DX 🤓
- Ops Experience / OX 🐂 (?)
- Cost 💵
- Lock in 🔐
Read the full post linked below for all details
Pros of AWS Lambda
- No infrastructure129
- Cheap83
- Quick70
- Stateless59
- No deploy, no server, great sleep47
- AWS Lambda went down taking many sites with it12
- Event Driven Governance6
- Extensive API6
- Auto scale and cost effective6
- Easy to deploy6
- VPC Support5
- Integrated with various AWS services3
Pros of OpenFaaS
- Open source5
- Ease4
- Autoscaling3
- Community2
- Documentation2
- Async1
Sign up to add or upvote prosMake informed product decisions
Cons of AWS Lambda
- Cant execute ruby or go7
- Compute time limited3
- Can't execute PHP w/o significant effort1