Figure 4-30 Increasing abstraction from infrastructure 4.10.1 Are software-as-a-service applications serverless? Chapter 4. Cloud-native concepts and technology  139 However, we are not at the end of the road yet, there is certainly more that can be done. We  still need to look after the deployed containers. We are still very aware of how many we are  running, and how they are scaled and secured.  What if we could completely abstract ourselves even from the management of the runtimes  themselves. What if we could just the implementation technology, write the code, and then  give it to the infrastructure to run it, keep it available, scale it, secure it. In effect, this is the  model that “serverless computing” has adopted – although the name  serverless  has fallen  quickly out of favor for reasons we explain shortly.  Traditionally, “serverless” means  that the users of a capability do not need to have any notion  of the servers required to run it. This definition has been around pretty much forever in the  computing industry. Looking at today’s techno logy, any web-based multi-tenant application  that we use daily could be described as “ser verless”. We could list hundreds of SaaS  application as examples from Gmail to GitHub, to Workday, Salesforce, and any number of  social media applications, and so on.  As a user who subscribes to any of those services, we have no notion of how many “servers”  are working for us in the background. If we ask the application to do more work for us, it  scales up invisibly in the background. Our cost model (if we pay for subscription at all) is  based on user-focused notions of usage, for example, number of users, number of jobs  submitted, number of invocations made, amount of data transferred, and so forth. Clearly, we  could find examples of that model as far back in computing as you care to look. However,  this  is not what is typically being referred to when we speak of serverless . Obviously, this term can  easily be misconstrued. So, a new term was quickly introduced:  funtion-as-a-service  (FaaS).  Cost of entry of first function Increasing abstraction from infrastructure Bare Metal Virtual machines Functions Containers