
For some time, there have been talks of serverless architecture taking over the online industry. Alibaba Cloud listed some reasons why it is the future of cloud computing. In a blog post, Alibaba Cloud Senior Technical Expert Buchen explains that “serverless is changing the future software development model and process and is the future of cloud computing.” Serverless is creating value not only for enterprises but also for cloud vendors.
Even IEEE has a whitepaper calling serverless architecture a revolution in cloud computing. “The perspective of the serverless compute model is well conceived by the major cloud service providers and reflected in the adoption of the serverless computing paradigm,” the paper writes.
However, the present situation paints a picture that does not appear to manifest a serverless revolution in it. To be fair, projections back then did not specify which year the revolution would come to fruition. Still, there are doubts if it is really going to happen.
What exactly is serverless?
Before going into the actual discussion, here’s a bit of an FYI. Serverless refers to a computing execution model wherein cloud service providers (CSP) fully take charge of the server needs of clients by allocating machine resources on demand. It does not mean that servers are ditched altogether. Instead, organizations do away with the establishment and management of their servers by relying on CSP serverless solutions.
The serverless setup frees companies from the responsibility of managing their own operating systems or the need to build or use applications that should be compatible with a specific OS. It allows developers to create generic codes that can be uploaded to and run in the serverless framework
Another notable benefit of using a serverless infrastructure is scalability, which entails the dynamic assignment of resources so users do not have to worry about sudden resource requirements or traffic surges. This scalability also creates the benefit of cost efficiency, because users only pay for the resources they use, and most serverless systems are paid by the minute or second.
Other benefits of serverless are the reduction of hardware and software costs, faster deployment, and decreased latency. Many have been optimistic about the rise of the serverless infrastructure, but as UC Berkeley’s Chenggang Wu revealed in his QCon conference presentation on the state of serverless computing, there is still a very long way to go before the technology gains widespread let alone dominant adoption.
Serverless challenges
The widespread adoption of the serverless framework is mired by challenges. The difficulties are not that different when compared to what other new technologies encounter during their introductory or infantile periods. However, the confluence of unfortunate events may have aggravated the challenges a little.
In terms of security, serverless has to contend with numerous threats. The good thing is that serverless security protection has already improved, especially with an emphasis on comprehensive visibility, enhanced mitigation, and OWASP serverless attack defense. Other threats being addressed including the following:
- Function event data injection
- Insecure third-party deficiencies
- Broken authentication
- Serverless deployment configuration issues
- Mishandling of permissions and role-based access
- Monitoring and logging inadequacies
- Security issues in the storage of secrets
- Execution flow manipulation
- Poor handling of exceptions and error messages
- DDoS attacks
Another challenge facing serverless is the limited programming languages supported. According to a report by ZDNet’s Nick Heath, the programming languages supported include Node.js, Python, Java, .NET, Go, PowerShell, JavaScript, C#, Ruby, Bash, Batch, F#, PHP, PowerShell, and TypeScript. Many organizations that are considering going serverless may not consider this limited list of supported languages too problematic, but it is certainly a bane for widespread adoption.
Also presenting a significant challenge is the inherent vendor lock-in nature of the serverless model. Because of the lack of standardization, different vendors have different frameworks and standards. Consequently, users are left with the unviability or costliness of switching to a different vendor if they are not satisfied with the services of their current provider. It would be difficult to work with different serverless providers since their systems hardly have resemblances. Migration would be extremely time-consuming.
Moreover, serverless performance at the moment is still not at its optimum. UX design and web development company SingleMind conducted a server v. serverless test and found that most businesses may not benefit from serverless unless they are regularly processing intensive and long-running requests. “If the purpose of a server is simply to hand out static pages and process basic API requests, then perhaps [a scalable traditional server] is a good option. However, if your server processes images or long-running requests, consider a serverless option.”
Software development site InfoQ similarly conducted a performance test and came up with anecdotal evidence that serverless performance is not yet on par with server infrastructure. “Functions that have not been run on a particular platform before, or have not been run in a while, take some time to initialize,” InfoQ noted while suggesting that this could be due to the shifting of the code to a less accessible storage medium.
It is also worth pointing out that the serverless framework is crucially disadvantaged by its inability to run entire applications without excessive costs. InfoQ’s cybersecurity and AI specialist Bernard Brode says that “you could (run entire applications), but it would not be cost-efficient to do so.”
In the current setup, in most cases, serverless platforms tend to be used as an adjunct to on-premises or in-house servers to assist in performing resource-intensive tasks. They may not serve as full substitutes for traditional systems, as they cannot even compare to the holistic computation capabilities of existing container and virtual machine tech.
On track or stalling?
The serverless market is expected to grow from $7.6 billion in 2020 to $21.1 billion in 2025 at a CAGR of 22.7 percent during the 2020-2025 period. This is doubtlessly a good growth rate. However, it would be difficult to characterize it as revolutionary. The benefits are promising, but the expected adopters have not responded the way some pundits have predicted.
An O’Reilly study on cloud adoption in 2020 showed that the serverless model has been stagnant. Around a third of organizations say that they are currently using serverless computing solutions. However, 63 percent of the survey respondents said that they have no plans of adopting serverless during the year.
Tech magazine TechCentral.ie came up with a rundown of comments from various authoritative figures in the tech industry. The consensus: serverless has lost steam. While some are still optimistic about its future, the short-term outlook appears to indicate that the serverless revolution is stalling. Nearly all of the challenges for wider serverless adoption have not been meaningfully addressed.
In spite of all of these, there are still reasons to believe that the serverless framework will eventually reach a good enough level of maturity and attack more adopters. It is not yet dead—far from it—and new innovations and improvements are only going to make serverless more enticing and cost-efficient for users.
Author | Emily Forbes
An Entrepreneur, Mother & A passionate tech writer in the technology industry!
Email:- EmilyForbes69@gmail.com