Menu
Image

NEWSLETTER

Latest Cloud-Native, Serverless and Generative AI news. Quality tech content read by tech professionals from Microsoft, Google, Amazon and Carrefour, and more

Follow Us

serverless cover

Things you didn’t know about Serverless

Mélony Qin Published on December 13, 2023 4

In a traditional server-based architecture, organizations are responsible for provisioning, scaling, and maintaining servers to host their applications. Naturally, when Serverless comes, it represents how we unveil a pretty exciting cloud computing model that allows developers to build and run applications without having to manage the underlying infrastructure.

I have been writing about Serverless over the last few years in blogs and books, I feel this technology has been through quite a journey, so I decided to dig up some interesting facts about Serverless, here they are!

Why Serverless?

With serverless computing, administration tasks such as scaling, maintenance, and provisioning resources are handled by public cloud providers, including AWS Lambda function from Amazon Web Service, Azure functions from Microsoft Azure, and Cloud functions from Google Cloud Platform.

They’re big players, but the market has more to offer. Apart from public cloud providers, you’ve got open-source choices like Fission, OpenFaaS, and Knative for serverless functions. These open-source serverless functions can be deployed on Kubernetes and take full advantage of Kubernetes’ inherent capabilities alongside their own prowess in auto-scaling and resource management. Is Serverless a good fit for AI applications, though? This post gives you a detailed analysis.

We’ve even got a playlist about serverless functions on our channel. Check it out if you’re interested!

Does serverlesss really help you save costs ?

In theory, serverless computing is a cost-effective solution for all size of businesses, operating on a “pay-as-you-go” model. Imagine if your organisation is overloaded with the hustle of dealing with fixed monthly fees for physical server maintenance or managing lots of Virtual machines (VMs) in the cloud. With serverless functions, you pay only for the computing resources used during your code execution. This works perfectly well with microservices and event-driven architecture.

While serverless computing promises cost efficiency, it’s important to note that it doesn’t guarantee cheaper IT operations for every workload. So, it is necessary to conduct a thorough assessment considering the specific requirements of your applications as well as their usage patterns to determine if serverless can truly save you money. What’s even more factual is that specific workloads may become more expensive when executed in a serverless environment. The following is the latest tech buzz on the internet where Amazon Prime video / audio went back to Monolithic from microservices.

When you’re figuring out if serverless solutions make financial sense, it’s crucial to grasp the main cost factors. These typically include Compute Resources, which is the computing power needed for your application, Memory or Storage Allocation for the overall data size, and Data Transfer costs for moving data in and out. By understanding these factors, you can wisely decide if a serverless approach fits your specific needs and budget.

From above, you can see they ‘refactored’ the orchestration workflow, which contains the expensive cost of data transfer within the process memory. As a result, they embodied directly a container-based deployment, and implemented a number of detectors only scale vertically because they all run within the same instance. With this approach, they stated a cost-saving of 90% on the infrastructure.

What workloads align best with Serverless

Serverless architectures are cost-effective for workloads experiencing fluctuating usage patterns which means alternating between high activity and low traffic periods. To tackle this kind of workload, buying and maintaining a constantly running server, might not make financial sense. So, let’s talk about what workloads align best with serverless computing :

Low and variable workloads

Firstly, we have low and variable workloads, perfect for applications with irregular traffic or low user demand. Serverless shines here by being highly cost-effective, eliminating charges for idle server time as it automatically scales down to zero during inactive periods. An example of this is a weather forecasting application that experiences traffic surges during severe weather events but remains quiet during regular days. Serverless allows for cost-efficient operation during low-traffic periods without paying for idle server time.

High burst traffic

Next up is high burst traffic, where serverless excels in managing sudden spikes in usage. Unlike traditional setups that may require overprovisioning for peak loads, resulting in unnecessary costs during regular usage, serverless adapts seamlessly to varying demands ( aka. Black Friday for billet Reduc :)). An example of this is a ticketing websites during the release of highly anticipated event tickets experience sudden traffic spikes. Serverless efficiently handles these peaks without the need for overprovisioning servers, ensuring seamless user experience without incurring unnecessary costs.

Predictable workloads

Moving on to predictable workloads, if your application maintains steady and predictable usage patterns, opting for provisioned infrastructure with reserved instance capacity might prove more cost-effective compared to going serverless. An example of this such as enterprise HR system that experiences consistent usage throughout the workday. Opting for provisioned infrastructure with reserved capacity might be more cost-effective compared to serverless, as it ensures predictable performance without the variability of serverless scaling.

Short-lived tasks

Lastly, for short-lived tasks that execute quickly and demand minimal resources, serverless is the go-to choice for cost efficiency. In contrast, provisioned servers may incur higher costs due to minimum capacity or specific billing requirements. An example of this for instance, an image or file processing services that execute quick tasks intermittently throughout the day. Serverless proves cost-efficient as it charges only for the actual execution time, saving costs compared to provisioned servers that might have a constant billing rate regardless of task duration.

Understanding your workload type is important for making informed decisions. It’s not just about saving money but also about getting the best performance that suits exactly what you need. 

Drawbacks for Serverless

While serverless computing has advantages, there are also some drawbacks.

No one size fits all

For tasks that run for extended periods, serverless may become more expensive in the long run, making provisioned or reserved infrastructure could be a cheaper option.

Security and privacy

Security and privacy are also things to consider. When you go serverless, you’re giving some of your data to another company, and how well it’s protected can vary. Also, you’ll be sharing resources in the cloud data center with others. Among companies that haven’t tried serverless, 60 percent worry about security and the unknown parts of the cloud.

Monitoring

Another thing to consider is monitoring. In the world of Serverless, If something isn’t working right, figuring out the problem can be challenging. Fortunately, there are specialized solutions for this, such as Datadog, New Relic, Dynatrace and Splunk. Ideally, end-to-end full-stack monitoring is crucial to identify and address any issues effectively.

To know more about Serverless functions I have summarized in the following video ( plus a hidden detail :)), so check it out if you’re interested :

Conclusion

Serverless is Microservices and serverless components are tools that do work at high scale, However, deciding whether to choose it over a monolithic approach isn’t a one-size-fits-all solution. It’s a choice that demands a case-by-case evaluation, considering factors like workload complexity, scalability needs, and development preferences. While serverless is impressive, picking between it and a monolith depends on what works best for each unique situation.

We’re continuing to make more content on cloud-native and serverless technologies in both blog and video forms. To support us to create more quality content, follow me on Github and become a sponsor from here. Thanks for your continued support, let’s stay tuned !

Follow us on Instagram

Written By

I'm an entrepreneur and creator, also a published author with 4 tech books on cloud computing and Kubernetes. I help tech entrepreneurs build and scale their AI business with cloud-native tech | Sub2 my newsletter : https://newsletter.cvisiona.com

4 Comments

4 Comments

Leave a Reply

error: Protect the unique creation from the owner !

Discover more from CVisiona

Subscribe now to keep reading and get access to the full archive.

Continue reading