Let's consider how the cloud works from first principles. Why would you use a cloud in the first place? Well, you could run your own data centers. You could build your own compute. You could do everything. You could even build your own AWS if you really, really wanted to and you had a lot of money. But what you get when you use a cloud provider like AWS is an abstraction layer over electricity, over networking, and over all of these different complicated services that you would need to manage, while also realizing efficiencies of scale.
When you move into AWS managed services, you're going one more level above that with a layer of abstraction over that fundamental architecture. This would be something like, Amazon RDS, which is a managed service that allows you to spin up different kinds of database engines, and AWS will manage that underlying compute infrastructure for you. Moving one level up from that, you have another layer of abstraction, which we've come to call "Serverless".
And of course, Serverless has servers, but what you're doing with Serverless is you're saying - "I'm willing to pay a dollar cost to cover the abstraction over my underlying compute so that I'm no longer thinking about instances & I'm no longer thinking about storage. All I'm thinking about is the request and the demands of my application and how I can deliver those as efficiently as possible."
When you reason about your applications from first principles and you think about each of those levels of abstraction, you can go and work out a unit cost per customer that can move around your application and inform architecture decisions about when you should use Serverless, when you should use a managed service, or when you should go right back down to the bare hardware.
This is how you should think about your applications at scale, and this is how you decide what the right kind of architecture for your application and your customers is.
If you’re building SaaS applications and would like help with strategizing the right infrastructure for your needs, get in touch with our Cloud Native App Development experts.