One of the biggest advantages of serverless computing may also be hiding one of its biggest risks…
For the layperson, serverless computing is another one of those annoying terms like “cloud computing” that tries to make it sound like no physical hardware is being used. Of course that’s simply not true, and just like cloud computing all serverless really means is that you are outsourcing your computational needs to a third-party provider.
Serverless exists in the cloud, and both of these need servers. The difference of serverless to other cloud-based offerings is that you pay for backend services on an as-used basis; something that changes (like many cloud services) the investment model for firms from a significant initial investment and continued maintenance to a pay-as-you-go scheme.
With serverless computing cloud vendors are providing a function-as-a-service (FaaS) offering. With FaaS code is stored, run and executed in the cloud and is only spun up when it is required. Executed functions can be batch or data processing or any number of application functions depending on the task.
Thomas LaRock, head geek at SolarWinds states that serverless computing is part of a greater trend of transitory infrastructure: “New models like containerisation and serverless functions are not only abstracting the reliance on hardware but also on operating systems. They’re designed to be ephemeral, created, or called on-demand, delivering their outcome before disappearing, to be recreated whenever or wherever they’re needed and not remaining in our infrastructure forever.”
The Benefits of Serverless Computing
The obvious advantage of operating a serverless infrastructure is the zero costs of server management as most of the hardware and tasks are run offsite, resulting in no servers to maintain or moan about when they crash (on your end at least).
Cybersecurity responsibilities such as configuring firewalls and data encryption are no longer dealt with by internal IT workers. Patches are automatically pushed out by your service provider so systems are never left pining for the latest patch or security update. (To be clear this is not an excuse to forget about cybersecurity that should always be a concern.)
Ben Newton, director of operation analytics at Sumo Logic told us that: “A serverless back-end would scale and load-balance automatically as the application load increases or decreases, all the while keeping the application online. The user would only need to pay for the resources consumed by a running application. Theoretically at least, this has the promise of drastically reduced development cycles and low operational costs.”
This type of flexible scalability is an ideal fit for organisations and business that see strong surges of engagement during seasonal events; such as the retail and charity sectors who can experience tenfold increases in computational demand during the Christmas season.
Working like this can be a boon for your development team who no longer have to worry about hardware and can simply focus on creating innovative applications or functions. Brandon, CTO at cloud-based rota planning software company RotaCloud told us that: “The advantage of serverless computing for us was reducing the barrier to entry for developers, and vastly reducing DevOps workload. Running serverless allows us to focus on code, and completely eliminate the need to configure hardware, scaling, operating systems, and HA.”
Whats the Draw Back?
Serverless computing also makes the job of testing and debugging more difficult due to its ephemeral nature. Environments that are created can be very difficult to replicate and some processes and logs may no longer be visible.
Nic Wood, ERP Enterprise and Cloud Architect at Version 1 notes that: “Serverless follows a microservice design pattern, meaning each function provides a single service. This multiplicity of functions can increase difficulty in troubleshooting and tracing events. Even logs can be generated in numerous places and knowing where to investigate can be complicated.”
It Can Be A Big Cultural Change
One of the biggest advantages of serverless computing may hold its biggest risk; the pay-as-you-go payment structure. Sure your company no longer has to pay for hardware maintenance, but third-party providers are not doing it out of the goodness of their hearts, the reality is they make money every time you need to scale up.
Tom Weeks, technical director at Informed Solutions told us that for many firms: “It might be a complicated step to move to a cost model that involves budgeting based on (for example) the number of requests made to an API and how long it takes to process that request. These sorts of pricing models fundamentally change what organisations need to know about the inner workings of their digital services and applications, which has the potential to be very challenging, particularly in environments that are running a lot of legacy IT.”