Serverless gives us the power to focus on delivering value to our customers without worrying about the maintenance and operations of the underlying compute resources. Cloud providers (like AWS), also give us a huge number of managed services that we can stitch together to create incredibly powerful, and massively scalable serverless microservices.
Almost 2 years ago now, I wrote a post on Serverless Microservice Patterns for AWS that became a popular reference for newbies and serverless veterans alike. The capabilities of serverless have changed dramatically since then, opening up a ton of new patterns and possibilities. Today I’m announcing the Serverless Reference Architectures Project. This project is intended to capture, share, explore, and debate the patterns and practices being used in serverless production applications today.
To really understand what’s going on, it’s useful to take a bird’s-eye view of a pattern, understand how data flows back and forth through the different components, and think about the implications on your application. I’ve created interactive architectures that let you explore the details of each component and walk you through the different steps.
You also need to understand how a pattern would come alive with AWS services and how you can configure it for your implementation. I’ve partnered with Stackery and integrated their interactive canvas so that you can explore these patterns, customize them, and generate updated SAM templates automatically.
Finally, you want to understand how you’d replicate the pattern in production using infrastructure-as-code to ensure repeatable, safe deployments. You’re free to use the generated SAM templates, or take advantage of community supplied templates for the Serverless Framework, CDK, and others.
This project hopes to encapsulate all of this in one place so you can start by learning about the pattern fundamentals, then go all the way through to deploying a functional version of the pattern into your own AWS account (all with just a few clicks).
By partnering on sharing common serverless reference architectures and patterns, we can help others unlock the true power of serverless with AWS. We are starting with just a few patterns, but I plan on adding several more and hope that you will contribute as well.
Give it a try, and let me know what you think!