Get Advice Icon

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

AWS Batch
AWS Batch

20
6
+ 1
0
Zappa
Zappa

30
25
+ 1
0
Add tool

AWS Batch vs Zappa: What are the differences?

AWS Batch: Fully Managed Batch Processing at Any Scale. It enables developers, scientists, and engineers to easily and efficiently run hundreds of thousands of batch computing jobs on AWS. It dynamically provisions the optimal quantity and type of compute resources (e.g., CPU or memory optimized instances) based on the volume and specific resource requirements of the batch jobs submitted; Zappa: Deploy all Python WSGI applications on AWS Lambda + API Gateway. 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!.

AWS Batch and Zappa can be primarily classified as "Serverless / Task Processing" tools.

- No public GitHub repository available -
- No public GitHub repository available -

What is AWS Batch?

It enables developers, scientists, and engineers to easily and efficiently run hundreds of thousands of batch computing jobs on AWS. It dynamically provisions the optimal quantity and type of compute resources (e.g., CPU or memory optimized instances) based on the volume and specific resource requirements of the batch jobs submitted.

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!
Get Advice Icon

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

Why do developers choose AWS Batch?
Why do developers choose Zappa?
    Be the first to leave a pro
      Be the first to leave a pro
        Be the first to leave a con
          Be the first to leave a con
          What companies use AWS Batch?
          What companies use Zappa?

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

          What tools integrate with AWS Batch?
          What tools integrate with Zappa?
            No integrations found
            What are some alternatives to AWS Batch 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.
            Beanstalk
            A single process to commit code, review with the team, and deploy the final result to your customers.
            Airflow
            Use Airflow to author workflows as directed acyclic graphs (DAGs) of tasks. The Airflow scheduler executes your tasks on an array of workers while following the specified dependencies. Rich command lines utilities makes performing complex surgeries on DAGs a snap. The rich user interface makes it easy to visualize pipelines running in production, monitor progress and troubleshoot issues when needed.
            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.
            Cloud Functions for Firebase
            Cloud Functions for Firebase lets you create functions that are triggered by Firebase products, such as changes to data in the Realtime Database, uploads to Cloud Storage, new user sign ups via Authentication, and conversion events in Analytics.
            See all alternatives
            Decisions about AWS Batch and Zappa
            Jeyabalaji Subramanian
            Jeyabalaji Subramanian
            CTO at FundsCorner | 12 upvotes 359.7K views
            atFundsCornerFundsCorner
            Amazon SQS
            Amazon SQS
            Python
            Python
            Flask
            Flask
            MongoDB
            MongoDB
            Swagger UI
            Swagger UI
            Vue.js
            Vue.js
            Vuetify
            Vuetify
            vuex
            vuex
            Zappa
            Zappa
            AWS Lambda
            AWS Lambda
            Netlify
            Netlify
            Google Compute Engine
            Google Compute Engine
            Slack
            Slack
            GitLab CI
            GitLab CI
            Sentry
            Sentry

            At FundsCorner, we are on a mission to enable fast accessible credit to India鈥檚 Kirana Stores. We are an early stage startup with an ultra small Engineering team. All the tech decisions we have made until now are based on our core philosophy: "Build usable products fast".

            Based on the above fundamentals, we chose Python as our base language for all our APIs and micro-services. It is ultra easy to start with, yet provides great libraries even for the most complex of use cases. Our entire backend stack runs on Python and we cannot be more happy with it! If you are looking to deploy your API as server-less, Python provides one of the least cold start times.

            We build our APIs with Flask. For backend database, our natural choice was MongoDB. It frees up our time from complex database specifications - we instead use our time in doing sensible data modelling & once we finalize the data model, we integrate it into Flask using Swagger UI. Mongo supports complex queries to cull out difficult data through aggregation framework & we have even built an internal framework called "Poetry", for aggregation queries.

            Our web apps are built on Vue.js , Vuetify and vuex. Initially we debated a lot around choosing Vue.js or React , but finally settled with Vue.js, mainly because of the ease of use, fast development cycles & awesome set of libraries and utilities backing Vue.

            You simply cannot go wrong with Vue.js . Great documentation, the library is ultra compact & is blazing fast. Choosing Vue.js was one of the critical decisions made, which enabled us to launch our web app in under a month (which otherwise would have taken 3 months easily). For those folks who are looking for big names, Adobe, and Alibaba and Gitlab are using Vue.

            By choosing Vuetify, we saved thousands of person hours in designing the CSS files. Vuetify contains all key material components for designing a smooth User experience & it just works! It's an awesome framework. All of us at FundsCorner are now lifelong fanboys of Vue.js and Vuetify.

            On the infrastructure side, all our API services and backend services are deployed as server less micro-services through Zappa. Zappa makes your life super easy by packaging everything that is required to deploy your code as AWS Lambda. We are now addicted to the single - click deploys / updates through Zappa. Try it out & you will convert!

            Also, if you are using Zappa, you can greatly simplify your CI / CD pipelines. Do try it! It's just awesome! and... you will be astonished by the savings you have made on AWS bills at end of the month.

            Our CI / CD pipelines are built using GitLab CI. The documentation is very good & it enables you to go from from concept to production in minimal time frame.

            We use Sentry for all crash reporting and resolution. Pro tip, they do have handlers for AWS Lambda , which made our integration super easy.

            All our micro-services including APIs are event-driven. Our background micro-services are message oriented & we use Amazon SQS as our message pipe. We have our own in-house workflow manager to orchestrate across micro - services.

            We host our static websites on Netlify. One of the cool things about Netlify is the automated CI / CD on git push. You just do a git push to deploy! Again, it is super simple to use and it just works. We were dogmatic about going server less even on static web sites & you can go server less on Netlify in a few minutes. It's just a few clicks away.

            We use Google Compute Engine, especially Google Vision for our AI experiments.

            For Ops automation, we use Slack. Slack provides a super-rich API (through Slack App) through which you can weave magical automation on boring ops tasks.

            See more
            Jeyabalaji Subramanian
            Jeyabalaji Subramanian
            CTO at FundsCorner | 24 upvotes 350.9K views
            atFundsCornerFundsCorner
            MongoDB
            MongoDB
            PostgreSQL
            PostgreSQL
            MongoDB Stitch
            MongoDB Stitch
            Node.js
            Node.js
            Amazon SQS
            Amazon SQS
            Python
            Python
            SQLAlchemy
            SQLAlchemy
            AWS Lambda
            AWS Lambda
            Zappa
            Zappa

            Recently we were looking at a few robust and cost-effective ways of replicating the data that resides in our production MongoDB to a PostgreSQL database for data warehousing and business intelligence.

            We set ourselves the following criteria for the optimal tool that would do this job: - The data replication must be near real-time, yet it should NOT impact the production database - The data replication must be horizontally scalable (based on the load), asynchronous & crash-resilient

            Based on the above criteria, we selected the following tools to perform the end to end data replication:

            We chose MongoDB Stitch for picking up the changes in the source database. It is the serverless platform from MongoDB. One of the services offered by MongoDB Stitch is Stitch Triggers. Using stitch triggers, you can execute a serverless function (in Node.js) in real time in response to changes in the database. When there are a lot of database changes, Stitch automatically "feeds forward" these changes through an asynchronous queue.

            We chose Amazon SQS as the pipe / message backbone for communicating the changes from MongoDB to our own replication service. Interestingly enough, MongoDB stitch offers integration with AWS services.

            In the Node.js function, we wrote minimal functionality to communicate the database changes (insert / update / delete / replace) to Amazon SQS.

            Next we wrote a minimal micro-service in Python to listen to the message events on SQS, pickup the data payload & mirror the DB changes on to the target Data warehouse. We implemented source data to target data translation by modelling target table structures through SQLAlchemy . We deployed this micro-service as AWS Lambda with Zappa. With Zappa, deploying your services as event-driven & horizontally scalable Lambda service is dumb-easy.

            In the end, we got to implement a highly scalable near realtime Change Data Replication service that "works" and deployed to production in a matter of few days!

            See more
            Interest over time
            Reviews of AWS Batch and Zappa
            No reviews found
            How developers use AWS Batch and Zappa
            No items found
            How much does AWS Batch cost?
            How much does Zappa cost?
            Pricing unavailable
            Pricing unavailable
            News about AWS Batch
            More news
            News about Zappa
            More news