Skip to main content
Image
Untitled%20design%20%288%29.jpg

Putting The Serverless Trend Under a Microscope

article publisher

Gurpreet Kaur

Cloud

Flexible. 
Scalable. 
Economical. 

These terms essentially sum up the advantages of serverless computing, an architecture that has brought a new dawn of building and running applications and services without giving much priority to the infrastructure. Serverless computing hosts execution environments remotely to run entire applications or mere parts of it as and when the demand is put in. 

Serverless architectures have reinvented the job description of developers, simplifying it to the point that they can generate generic code, upload it on serverless frameworks and see them work instantaneously. 

There is no longer a need for the multitudinal things that used to go with development, such as database and storage capacities, which only added to unnecessary operational overheads and delayed provisioning windows. 

With the pay-per-use model, serverless also doesn’t mandate for you to pay for idle servers, which means you only pay for the time the servers are actually running down to seconds. 

This model isn’t new, in 2006, Zimki PaaS had introduced a pay-per-use model, followed by the Google App Engine. However, 2006 wasn’t the era of cloud native technologies. It is now, with 20% of global enterprises fPaas today and by 2025 the number would be as high as 50%, according to Gartner.

Now, the question is why now? Why has Serverless become so hyped today? Will that streak continue in the future or is it fleeting? Let's find out.

What’s the Hype About Serverless?

The significant increase in the demand of computing resources is the major reason serverless applications are so hyped. Regardless of the country and the sector a business is operational in, the rapid growth has somewhat made them inept at building or maintaining the computing infrastructure that is crucial for handling the applications they run.

So, the only ideal solution became hiring serverless platforms that supplemented the infrastructural capabilities certain business lacked.

Serverless computing became the all-inclusive answer to gaining operational simplicity. The intrinsic concept elucidates eliminating the dependency on infrastructural setup. Not only that, it also removed development constraints related to configuration, provisioning and management.

Applications could scale automatedly, they became elastic to the point of managing unprecedented and unpredictable workload demands. 

As I mentioned before, with serverless, developers' roles were simplified. They could focus on the things that are still human-centric, like writing code, experimenting with design, perfecting it and aiming for business agility in the digital world. Read how serverless is stirring a change in business and culture.

Manually managing the infrastructure is not the part of the job now. 

  • Run code effectively, and you don’t have to provision or manage servers or containers. 
  • Compute, store, network and execute resources with automatic provisioning and scaling.
  • Test and develop environments with elevated capabilities as well as monitor, log, trace and debug with ease.

When it is said that serverless models aren’t dependent on you building or maintaining your own operating system, it means that application development has been repositioned to serve the developers  better. 

Is there more to serverless?

Yes, in fact there is. 

The benefits of serverless are presented.


Simplify Complex Application Stacks

Regardless of the complexity in your applications, if they are server-bound, they are going to be a hassle, which can be avoided with serverless. Consider AWS Lambda or Microsoft Azure, these serverless architectures will give you the robustness to create intuitive environments necessary for agile applications, without you having to set up any high-powered application stack. Learn the importance of implementing serverless computing with Drupal and AWS Lambda.

Enable Faster Releases 

Serverless computing is equipped with the concept of microservices and its benefits. Organisations can build applications with the flexibility of isolating and rectifying the smallest of development issues and deploying them individually. Thus, shortening the release cycles quite a bit. Learn how and when to decide deployment of serverless frameworks.

Leverage event-based computing 

With serverless infrastructure, you can take advantage of event-based computing. This is where your developers only write code and algorithms, while your serverless provider handles all the computing needs. The restrictions of traditional workflows do not apply here, with less time spent on development, your team would have more time to do business-oriented tasks now.

Let’s Take a Look at Serverless Adoption

Maintaining servers is boring; 
It’s repetitive; 
And it’s time consuming. 

You can be doing more productive things in the time you are setting up and managing traditional servers. 

According to the Cloud Native Computing Foundation, the percentage of serverless adoption has increased in the last few years. Their annual 2020 survey highlighted the same.

The percentage of organisations is shown in regards to the use or potential use of serverless.The graph shows how organisations use Serverless.


Only 35% organisations are not using serverless, the rest of the majority are already on it or planning to use it in the near future. Also, the majority of the organisations using serverless technology, that 60% of them, do so through a hosted platform. The leaders of which I will talk about in the next section. 

How Do Amazon, Google and Microsoft Rank?

AWS Lambda 
Google Cloud 
Microsoft Azure 

These are three names that are reigning over the serverless hosting arena. 

It can be said that AWS Lambda is the pioneer of serverless architecture, having conceptualised the infrastructure. Although Azure and Google are gaining traction of their own, AWS has the highest share. 

The proportion of usage of serverless platforms are shown.
Source: Datadog


The growth in the past year has been significant for both Google Cloud Functions and Azure. Azure had risen its market share from a fifth to a third, while Google has claimed nearly a quarter of organisations, given its new offerings in serverless including Cloud Functions and Cloud Run.

Moving back to the pioneer of this segment, AWS Lambda’s growth has been tremendous as well. In the last two years, not only are Lambda functions being invoked 3.5 times more often, each organisation’s functions are also running on an average of 900 hours a day.

A graph shows an increase in Lambda invocation.
Source: Datadog


The landscape of software stacks is changing with the serverless architecture and AWS, Azure and Google Cloud are leading the way.

Can Containers Beat Serverless?

You cannot talk about serverless without your wandering off to containers. Many even think they are similar technologies, and in some sense they are. 

Both help you deploy application code and that too consistently any time you do it. They save you overheads and certain VM complexities. They have a hosting environment and they enable auto-scaling of workloads. 

With these similarities, you’d think they are interchangeable. However, they aren’t. Serverless computing can be considered somewhat of a better version of containers with lesser hassle of work for our beloved developers.

Let’s see how.

  • Serverless architecture does not require you to manage any servers in the physical sense, with containers, you still have to deal with physical servers. 
  • Although both are scalable, there are limits to one. Serverless can handle any level of increase in traffic, while containers cannot exceed expectations.
  • Containers are on cloud, but the cloud providers would not maintain them, your developers would have to, which is not the case in serverless. 
  • The time to deploy is fast in both of them, but the fact that containers take much longer to be set up makes them slower than serverless. 
  • Finally, there is no pay-per-use model for containers. Since they run constantly, you would have to pay for them even when you are not using them; unlike serverless.  

Given these points, it is evident that containers do not beat serverless.

Is the Picture Always Rosey With Serverless?

Can the picture ever always be rosey? No, it certainly cannot. Serverless architecture is spectacularly good, yet it comes with certain limitations. Let’s find out what those are.

The limitations of serverless are given.


Lack of standardisation between platforms

When an application is run on a serverless platform, it essentially becomes a part of that said platform. It integrates itself to the point of entanglement of object storage, identity management and even queues. 

So, if you ever thought of changing platforms, it is going to be daunting as it is, but the fact that no two platforms have any similarity on an operational level would make it painful.

Non-inclusion of all programming languages 

The universality of serverless platforms becomes questionable because not all of them can run applications in every programming language out there. The mainstream languages may never be non-supported, but there is a chance that the ones that fall outside the purview of mainstream can be eluded.

Unsuitable for running entire applications 

Monolithic is a term not used in association with serverless ever. This is because it operates on a microservices model and running entire applications on it would not be cost-efficient for you. 

Only when you don’t have the computational resources to perform certain tasks is serverless the better option. If your monolithic application is running fine, don’t disintegrate it into a hundred pieces for serverless.

More on the challenges of serverless adoption here.

Regardless, Serverless Is Better and Getting Even Better 

The small number of limitations should not deter you from going Serverless because it is getting better by the day. Like for every technology, the best serverless has to offer today isn’t going to be the best tomorrow. 

I found a few trends in serverless architectures that may incline you to agree with me. 

The new trends in serverless are presented.


Improvements in AWS Lambda Invocations 

60 seconds. 

That is how long it took for a median Lambda invocation in 2020, which is almost half of the time it took the previous year.

Latency distributions and adherence to the best practices proposed by Lambda itself have made the platform cater to customer-facing applications, mandating low latency in a much more optimised way.

Better event-driven workflows with AWS Step Functions

Most applications require multiple Lambda functions and AWS services, which means error handling can become tricky. With AWS Step Functions stepping in, developers can build event-driven workflows, which lessen the operational complexity that comes when applications scale. 

According to Datadog, on average a Step Functions workflow includes 4 lambda functions, which only keep growing.

More adoption of serverless edge computing 

Edge computing is the next big thing. With faster data processing, it is rightfully so. Amazon CloudFront offers Lambda@Edge, and it is being widely adopted with a quarter of organisations having already taken it up. 

Delivering a more personalised experience to your global consumer base is what makes Lambda@Edge the choice for everyone. 

  • Transforming images based user characteristics; 
  • Serving varying versions of the web application during A/B testing; 
  • Harnessing CloudFront’s network of edge locations;

When it comes to executing functions closer to your audience, nothing beats Lambda@Edge. 

So, Is Serverless Interconnected With Our Future?

The projected growth of Serverless is shown.
Source: Mordor Intelligence


Serverless is only going to grow in the future. With an expected CAGR of 23.17%, I’d say it’ll grow massively. 

There is something else that peaks my interest in serverless and that is the notion of a unified platform of serverless for the cloud. Serverless computing and cloud go together, and provide unrestrained computing power. 

Consider the concept of an application installation and it is kept local, but only until the time it needs to be scaled. When that point comes, there is seamless transition to serverless. It is very likely to happen in the near future and it would be greatly appreciated. 

Another reason why serverless computing is interlinked with our future is because it's green. It has essentially brought along the green revolution in software development, where organisations are reducing their environmental impact by going serverless and not over-exhausting electricity. 

Unification of platforms with a greener future, I have to say serverless has been and will be a game changer.

Subscribe

Ready to start your digital transformation journey with us?

Related Blogs

Serverless vs Managed Services: Which One to Choose

Bllog%20Banner%20%281%29%20%281%29.png

When you decide to build an application in the cloud, you need to consider several factors. One of the most important…

Why choose serverless on AWS?

Untitled%20design%20%282%29%20%281%29.png

Over the past few years, the cloud industry has gone through an extreme change with the transformation of serverless…

Adopting Cloud-native in DevOps: A Journey

Untitled%20design%20%2849%29.jpg

Traditional measures of development and delivery of software are taking new shapes in terms of faster, easier and powerful…