One of our reader asked us why we have used Serverless and FaaS as interchangeable words in the article What Are the Real Use Cases of Serverless Architecture (FaaS)?. He is correct. Serverless and FaaS are not exactly the same. The main reason we used the terminiogies synonymously is that, the intended reader audience likely are begginers and need the basic concept, we think that confusing them with FaaS and Serverless would not worth at that time of their learning that topic. FaaS and serverless have similarities and differences. We can actually choose FaaS over Serverless or Serverless over FaaS. OpenWhisk is a FaaS.
Serverless Vs FaaS
Serverless is a broader terminology and actually includes serverless computing, serverless architecture, serverless coding. Usually we talk around serverless computing. Serverless computing is a cloud computing execution model. Here the cloud provider runs the server, manages the allocation of the resources. Pricing is based on the amount of resources consumed. Serverless computing can be a form of utility computing. Serverless solutions used in object storage, HTTP gateways, on demand functions (FaaS), data storage (of various sorts), queues and many other services. Serverless is a set which abstracts the underlying hardware completely.
FaaS, in reality is a type of serverless computing. FaaS is quite recent thing. Here we make the Microservices and narrow down to functions. The core idea is that, we have a small piece of code which can be invoked based on an event and managed without the complexity of infrastructure.
In other words, FaaS is a category of cloud computing services which is actually the development of applications and systems. Serverless computing was wider terminology and more towards the hardware. FaaS without using a serverless architecture is possible to run!
In case of FaaS, the server-side logic remaining as application developer’s task, but the server-side logic runs in stateless compute containers. When these containers are triggered, the situation is managed by the third-party vendor. Widely used FaaS options are open-source options from Oracle, IBM and AWS Lambda, Google Cloud Functions, Microsoft Azure Functions.
Illustration : IBM OpenWhisk architecture
Just the functions deployed to cloud or containers is FaaS! Yes, it is confused with Serverless. Serverless is a computing Paradigm, a cloud computing model and includes future methodologies which we have not seen yet.
Serverless is analogous to virtualization software whereas FaaS is analogous to Cloud Computing software. Of course, many of the Cloud Computing software includes the virtualization software core. Today we more easily understand Virtualization, Cloud Computing compared to 9 years back. 9 years back we used to publish easy basic articles on cloud computing, virtualization! Twitter came in the year 2006. Cloud computing became mainstream after the year 2006.
So, we will say “How to develop a WordPress Plugin Serverless actions…” and in the description, we will write sentences such as “Let us think about the Swift actions under Functions (FaaS) on IBM Cloud.”