It’s nobody’s fault but mine
Welcome to Issue #5 of Off-by-none. I really appreciate you being here!
Last week we took a more in-depth look at how we can use traditional microservice patterns and adapt them to our serverless applications. An Introduction to Serverless Microservices was the first in a series of posts to demonstrate the power of serverless microservices and how they can be implemented.
There are a lot of topics to cover, but I consistently get questions about how to handle errors in distributed systems. This is especially significant with serverless architectures since functions are ephemeral and observability is less than ideal. I’m working on a new post on this topic that I’ll share soon.
In the meantime… ⏰
When you’re looking for a good serverless read… 📖
The Case of the Broken Lambda by Vicki Boykis is an interesting read that turns debugging a Lambda function into a modern Sherlock Holmes mystery. The issue described is very specific, but there are some valid lessons in here.
Speaking of debugging, Investigating spikes in AWS Lambda function concurrency by Ian Carlson, Principal Solutions Architect at AWS, is another great read. This post gives you some useful strategies for tracking down issues caused by errant code or upstream scaling that can exacerbate concurrency issues.
Finally, Adnan Rahić published A crash course on Serverless with AWS — Image resize on-the-fly with Lambda and S3. Interesting use of Docker to package binaries for a Lambda function. This is a great example of how the Lambda runtime environment can support much more complex use cases.
When the idea of “serverless” relational databases piques your interest… 🕵️♂️
Aurora Serverless has been generally available for almost 2 months now. I was really excited when it came out and published Aurora Serverless: The Good, the Bad and the Scalable which goes into quite a bit of detail regarding cost and performance. I notices that AWS is hosting some webinars this week that might be interesting to those who want to explore this technology in more depth. You can register here for a live session or to get the replay when it’s available.
Serverless Star of the Week
There is a very long list of people that are doing #ServerlessGood and contributing to the Serverless community. These people deserve recognition for their efforts. So each week, I will mention someone whose recent contribution really stood out to me. I love meeting new people, so if you know someone who deserves recognition, please let me know.
This week’s star is Paul Johnston (@PaulDJohnston). Paul was one of the co-founders of ServerlessDays (formerly Jeff), a senior developer advocate for serverless at AWS, and a serial CTO that has embraced serverless in all his recent endeavors. I really like the way Paul thinks about serverless, and while his occasional blog post is always worth the read, I’ve found myself spending a lot of time lately watching some of his conference talks. Like this one and this one and definitely this one.
One of the things I like so much about Paul is that he’s opinionated. I don’t always agree with some of his opinions 😉, but I definitely like how he makes his case for serverless and how it should be done. With best practices still emerging in serverless, I think it’s important for new developers to have some sort of framework to start with. Agree or disagree, Paul continues to put his ideas out there.
I’ve spent a lot of time this past week continuing to work on our serverless microservices at AlertMe. I’ve been immersed in this for the last few months, and through that process, some of my thinking has evolved a bit. I’ve discovered so many nuances, complexities, and workarounds, that I’ve had to stop a few times to build tools (like serverless-mysql) to encapsulate some of them. While these are obviously helpful, I feel like some of this tooling is starting to bog down the simplicity that is (or was) serverless. My boilerplates are getting a bit out of hand, which is something to think about.
I hope you enjoyed this issue of Off-by-none. Please send me feedback and suggestions to make this newsletter better. Contact me via Twitter, LinkedIn, Facebook, or email and let me know your thoughts, criticisms, or even how you’d like to contribute to Off-by-none.
Go build some great serverless apps. Hope to see you all next week!
Share this newsletter with your friends and coworkers!
Off-by-none is a weekly email newsletter that focuses on the technical details of building applications and products in the cloud using serverless technology. Together we can become better developers and product people by making fewer mistakes as we learn from each other. Off-by-none is the idea that we can become exceptional at what we do, if we are willing to put in the work. Join me on this journey as we help the community work to develop best practices, share our ideas, and learn to build better cloud-based software.
I respect your privacy and I will NEVER sell, rent or share your email address.