Need advice about which tool to choose?Ask the StackShare community!

Serverless

1.3K
1.2K
+ 1
26
Zappa

61
99
+ 1
0
Add tool

Serverless vs Zappa: What are the differences?

Serverless and Zappa are both frameworks used for deploying serverless applications. However, there are several key differences between the two:

  1. Deployment Procedure: One major difference between Serverless and Zappa is the deployment procedure. Serverless framework deploys applications using cloud providers like AWS Lambda, Azure Functions, and Google Cloud Functions. On the other hand, Zappa specifically focuses on deploying to AWS Lambda and relies on AWS API Gateway for routing requests.

  2. Language Support: Serverless framework supports multiple programming languages, including JavaScript, Python, Java, C#, and more. This allows developers to choose the language they are most comfortable with. In contrast, Zappa focuses primarily on Python, making it a more suitable choice for Python developers.

  3. Flexibility: Serverless framework provides more flexibility when it comes to configuring and customizing deployment settings. It offers various options for managing resources, environment variables, and event triggers. Zappa, on the other hand, abstracts away most of the configuration details and provides a simpler, more opinionated approach to deployment.

  4. Community and Ecosystem: Serverless framework has a larger and more active community compared to Zappa. This means there are more resources, tutorials, and plugins available for developers. Zappa, being a more specialized framework, has a smaller community but still has a dedicated user base.

  5. Integration with Other Services: Serverless framework integrates easily with many other cloud services and tools, such as AWS DynamoDB, S3, and API Gateway. Zappa, while primarily focused on AWS Lambda, also offers integration with some AWS services but may not have the same breadth of integrations as Serverless framework.

  6. Maturity and Stability: Serverless framework is a more mature and stable platform compared to Zappa. It has been around for a longer time and has a large user base, making it a reliable choice for production deployments. Zappa, although stable, is relatively newer and may have fewer updates and bug fixes compared to Serverless framework.

In Summary, Serverless framework offers more deployment options, language support, and flexibility, with a larger community and extensive integrations. Zappa, on the other hand, specializes in Python deployment on AWS Lambda, providing a simpler and more opinionated approach.

Decisions about Serverless and Zappa

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.
The setup

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

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Serverless
Pros of Zappa
  • 14
    API integration
  • 7
    Supports cloud functions for Google, Azure, and IBM
  • 3
    Lower cost
  • 1
    Auto scale
  • 1
    Openwhisk
    Be the first to leave a pro

    Sign up to add or upvote prosMake informed product decisions

    - No public GitHub repository available -

    What is Serverless?

    Build applications comprised of microservices that run in response to events, auto-scale for you, and only charge you when they run. This lowers the total cost of maintaining your apps, enabling you to build more logic, faster. The Framework uses new event-driven compute services, like AWS Lambda, Google CloudFunctions, and more.

    What is Zappa?

    Zappa makes it super easy to deploy all Python WSGI applications on AWS Lambda + API Gateway. Think of it as "serverless" web hosting for your Python web apps. That means infinite scaling, zero downtime, zero maintenance - and at a fraction of the cost of your current deployments!

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Serverless?
    What companies use Zappa?
    See which teams inside your own company are using Serverless or Zappa.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Serverless?
    What tools integrate with Zappa?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    GitHubPythonNode.js+47
    54
    72306
    What are some alternatives to Serverless and Zappa?
    AWS Lambda
    AWS Lambda is a compute service that runs your code in response to events and automatically manages the underlying compute resources for you. You can use AWS Lambda to extend other AWS services with custom logic, or create your own back-end services that operate at AWS scale, performance, and security.
    Terraform
    With Terraform, you describe your complete infrastructure as code, even as it spans multiple service providers. Your servers may come from AWS, your DNS may come from CloudFlare, and your database may come from Heroku. Terraform will build all these resources across all these providers in parallel.
    Kubernetes
    Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
    Azure Functions
    Azure Functions is an event driven, compute-on-demand experience that extends the existing Azure application platform with capabilities to implement code triggered by events occurring in virtually any Azure or 3rd party service as well as on-premises systems.
    Apex
    Apex is a small tool for deploying and managing AWS Lambda functions. With shims for languages not yet supported by Lambda, you can use Golang out of the box.
    See all alternatives