The hype around serverless is at the top of the cloud (pun intended). But technologists and IT professionals need to step back and reconsider their expectations from serverless.

Gartner refers to this as a "hype cycle" when a new technology passes through three phases: "peak of inflated expectations," "trough of disillusionment" and eventually towards the "plateau of productivity." Serverless PaaS and FaaS have been placed on the upward trend and are still not on the peak hype in Gartner's 2017 Hype Cycle for Emerging Technologies.

We’ve observed a robust expansion of serverless ecosystem. Ultimately, it has become a golden hammer we are seeing everywhere. Another example is blockchain, but this is fairly a common scenario whenever there is a launch of new technology. It wouldn't be unfair if I place serverless as the most overhyped technology on the block, forming my opinion from the number of talks/meetups happening around serverless.

While these talks/meetups and conferences do an amazing job of accelerating the adoption of serverless technology, as a by-product, it also inflates the height of expectation from it. And that's what I am going to discuss in this article — reconsidering the serverless expectations.

#1. RAM Allocation

No matter which serverless provider you're opting for, allocating RAM is still the function of the users and not the service provider. Since RAM isn't the only factor to run your functions, users are also mandated to tune up the respective CPU configurations and network bandwidth. With the absence of CPU clock speed, monitoring the coding efficiency of your serverless functions is not easy.

I've come across developers who are willing to sacrifice this control for removing the overhead of provisioning complexity. However, there is a cost to it. When you reconsider the provisioning benefit after adding the monitoring cost, what you actually get for the money is really less.

#2. Cost Management Challenges

Freemium models of serverless vendors is the biggest attraction which draws developers to try this new technology. Due to the per-second billing and freebies, serverless is considered cheap. That might be true for some cases, but not for all cases.

The anticipated users always consider price as one of the primary factors for incorporating serverless. However, those who've already tried and built scalable systems might be less likely to agree over this fact. Those who're running this at scale are facing cost management issues as it's turning out more expensive than their expectations in comparison to the modest legacy/cloud systems.

#3. Limited Use-Cases

Most importantly, serverless architecture has highly specific and limited use cases. Have a look at your organization's technology portfolio which includes event-driven serverless apps. Among them, how many of them have unpredictable usage patterns? Many, right? This makes all these apps inherently impractical to host on a pay-per-second serverless model.

Certainly, serverless isn't suitable for all your traditional architectural requirements. IaaS replaced your physical infrastructure but FaaS or BaaS can't, at least, not your mainframe server.

Take Away

Serverless hype is indeed misplaced. It definitely has an integral part in tomorrow's technology stack, but that's a small part of it. Organisations who anticipate migrating all of their apps to serverless should reconsider and reflect.

Any recommendations? FaaS is a great tool but it is a part of an even greater toolbox of the cloud ecosystem. Ultimately, resist the hype, reflect and use serverless to build apps based on microservices architecture.

Have an opinion to share? Connect with me on Twitter @jsitapara to talk more about serverless.