7 ms·
Serverless Comparison: Zappa vs. Chalice
- jessaustin 10y agoThe biggest advantage that Chalice has over Zappa is related to IAM roles. Chalice has a very cool feature where it will actually inspect your Chalice application for AWS service calls and generate an IAM policy based only upon what the application needs. That is pretty sweet.
- imglorp 10y agoThe roles are a huge pain in the gazarium to get working and not too loose. This was a big win for me in chalice.
- brilliantcode 10y agoI do agree that is a huge win for chalice. I still don't have a clear understanding and rather not fiddle with the IAM stuff if possible. I just want to go from zero-to-scalable-rest-api with minimal cognitive load from having to switch back and forth different AWS products in the web console.
- throwaway2016a 10y agoIt doesn't inspire too much confidence when their homepage starts with: "Never Worry About Web Hosting Again With Zappa, horizontal scaling is handled automatically." Yet it took five minutes to load. How does this compare to https://serverless.com/ https://serverless.com/ Granted the auto-discovery of IAM roles selling point Serverless doesn't do. And Serverless is Javascript centric but can still be used with Python and many people do.
- cpollard0 10y agoYou can also do C# now and there is methods to get Scala and Go. Lots of choices for language.
- sorenbs 10y agoWe initially wanted to deploy simple scala services to lambda, but the ramp up time is just too slow. This is an issue when you have very few requests (your container is stopped and started) or many requests (more containers have to be started) We now only deploy js and go to lambda and both work great. Curious to to learn how the c# runtime behave in these scenarios.
- Jake232 10y agoI haven't used Zappa yet, but came across it the other day. I'd just like to say that it looks an exceptionally well built and thought out project. I will be using it in the future for sure.
- brilliantcode 10y agoreally wanted to get chalice working but no dice. following the README.md failed to produce a successful deployment. that was a while ago not sure if anything changed since then. However, I'm going to be taking a look at Zappa. Some sort of integration with S3 SQL + Cognito + Zappa/Chalice (Lambda) would be great.
- imglorp 10y agoYeah, it's okay now. Much better than by hand anyway. I'm basing a project on it to post here Real Soon Now.
- johnwheeler 10y agoIn addition to this comparison, I'd like to add that Rich Jones (@miserlou) is one of the most helpful maintainers I've ever come across on an open source project. He's available virtually everyday on Slack https://slack.zappa.io/ https://slack.zappa.io/ and has cultivated an impressive community for Zappa.
- Mizza 10y agoThank you, John! :D I really like our little community, there are a ton of people doing really interesting stuff with server-less technology in there.
- talawahtech 10y agoThe first two paragraphs of this post come across as unnecessarily defensive and combative. Amazon released a product and then released an open source preview project to make that product easier to use. They even mention other similar projects (including Zappa) in the project README. To hint at malice "...it felt like their interface and even their presentation of the product was a direct rip-off of our efforts" and then say "I don't want to attribute any direct malice" seems disingenuous. I feel like those fist two paragraphs could just be cut. Many people have found the Lambda + API Gateway combo useful, but cumbersome which is why so many different projects have sprouted up to fill that gap e.g. https://github.com/serverless/serverless https://github.com/serverless/serverless and https://github.com/claudiajs/claudia https://github.com/claudiajs/claudia Even AWS themselves have multiple preview projects in the same vein. There is another one just for Node.js that is designed to work with existing apps that were built for the Express framework https://github.com/awslabs/aws-serverless-express https://github.com/awslabs/aws-serverless-express, so less lock-in there I guess? It fine to promote the benefits of Zappa vs Chalice, including the fact that it avoids lock-in, but honestly the way the author approaches the comparison leaves a bit of a bad taste in my mouth.
- johnwheeler 10y agoI can empathize with the author and am familiar with the history of his project. In my case, I created a Python framework for the Alexa Skills Kit https://github.com/johnwheeler/flask-ask https://github.com/johnwheeler/flask-ask and worked on a blog post with Amazon. My hope was they'd appreciate my energy and passion for the Echo and work with me, but I feel like I've been largely ignored by them aside from being labeled an "Alexa Champion" which is meaningless to me. As my framework is becoming more popular, I wouldn't be surprised at all if they released a competing framework locked-in to their infrastructure (after seeing how they did Chalice), and it's their prerogative to do that. But as a developer who made a high quality product people want, of course I'd rather they recognized the value I've created and worked with me instead of against. They have zero obligation to, but if you're going to build on open standards and encourage community involvement, provide incentives for the community's hardwork aside from labels. Definitely don't disincentivize by doing wait-and-copy.
- ak217 10y agoThe attitude displayed in the opening of the blog post is unproductive. Chalice is deliberately minimalistic, opinionated, and tightly integrated with botocore on Python. It's also licensed under the Apache license. Zappa is a more general purpose framework, fulfilling a more general set of needs. When Lambda-API Gateway first came out, I spent a long time figuring out how to make things work, and I ended up with many of the same patterns that the author accuses Chalice of stealing - before looking at Zappa, and long before Chalice came out. If anything, both Zappa and Chalice are imitating (not "ripping off") Flask. The rest of the post contains an informative technical comparison, and I appreciate Zappa for pioneering the integration of some very useful features, so it's too bad that the opening really discredits it. I've had my fair share of PRs ignored by Amazon teams, so I can relate to the feeling that they're not engaged with the community, but it's better to respond with a constructive attitude.
- pyrophane 10y ago> Zappa does not lock you in to the AWS ecosystem. That is a big deal to me. I use AWS but have steered clear of any features that would be difficult to replicate if I moved off aws. If you make it too hard to migrate to another cloud platform you become completely dependent on Amazon, their pricing, and the choices they make. The advantages would have to be pretty compelling to make that worthwhile. Otherwise, it isn't actually that difficult to set some of this stuff up yourself.
- einrealist 10y agoI am really curious about Serverless. The entire thing feels like J2EE all over again. I am curious to see whether the feature creep will take over in these implementations, so that we end up in the same dead ends we were before. But that's probably just the cycle of our industry. Well, right now it is fun. Lets embrace it.
- wehadfun 10y agoDon't understand is there a way to run Zappa or your website built on Zappa somewhere besides Amazon?
- dschep 10y agoZappa is for deploying WSGI apps, there are tons of existing WSGI servers out there[0][1][2][3] ;) [0] http://gunicorn.org/ http://gunicorn.org/ [1] http://uwsgi.readthedocs.io/en/latest/ http://uwsgi.readthedocs.io/en/latest/ [2] http://docs.cherrypy.org/ http://docs.cherrypy.org/ [3] https://modwsgi.readthedocs.io/en/develop/ https://modwsgi.readthedocs.io/en/develop/
- simonw 10y agoI just tried and failed to follow this tutorial: https://aws.amazon.com/blogs/compute/binary-support-for-api-integrations-with-amazon-api-gateway/ https://aws.amazon.com/blogs/compute/binary-support-for-api-... Seriously, this is not how I want to be building software! I'm completely sold on the value of lambda functions, but it's viciously complex to actually deploy something simple. Sure, this is why Zappa and Chalice exist... but I feel like AWS could address these needs by making the default lambda deploy process less byzantine.