Serverless – the Serverless Application Framework – is a toolkit for deploying and operating serverless architectures. It’s an innovative and revolutionary technology allowing developers to focus on creating applications, rather than be distracted by building and changing their infrastructure.
‘Serverless’ is also however, a catch-all term for removing the pain points from infrastructure management and maintenance by moving from monolithic to microservices. It also implies a mentality of zero infrastructure maintenance. Although adoption is not widespread due being fairly new technology, there has been a rise in developers opting for serverless with great results.
So why is breaking away from the crowd and treading the seemingly less-travelled path a good thing? Because it’s a no brainer; serverless technology helps direct more energy and resources toward providing customer value. By using Functions as a Service (FaaS) and other services provided out of the box, you’re free to focus on other value-added activities like usability.
To prove it, we’ve rounded up our top six reasons why serverless is the way forward:
It’s cheap – The core component of serverless, FaaS, is only paid for when it’s in use. For example, when someone visits a deployed website, the service will spin up lambdas and return them while only charging for compute time, which works out at approximately $0.00001667 per request or $0.17 per 1 million requests.
Plus, platforms like AWS Lambda and Azure offer a free tier with one million invocations and 400,000 GB-seconds free each month. That alone provides enough execution seconds to keep a function using 128 MB of memory running all day every day for a month.
Most companies aren’t in the business of running and maintaining servers so the bigger cost savings come from not having a traditional operations team or re-deploying ops engineers to work on something more relevant for the core business.
Its quick to deploy – FaaS platforms are built to create and destroy applications in minutes. Time can therefore be spent writing and improving the functionality of code before submitting it for execution. Once instructed, the provider creates the environment to run and manage the deployed function and pulls it down when no longer needed. This, in turn, allows rapid return of the value created by the dev team.
It’s easy to learn the basics – While deeper implementation is more complex, the basics are remarkably easy to master, even for those that don’t code, but need to build an application by opening up complex development to people who never could have done this before.
In addition, a whole ecosystem of open source tools and products now exist to assist the development journey. Tools like Apex for example, allow you to develop Lambda functions in languages other than those directly supported by AWS, which makes it perfect for those who have yet to become technological polyglots.
It’s safe and resilient – As with all technology (and indeed servers), serverless is not infallible – permissions, dependencies and data are vulnerable to exploitation, but with most serverless applications being short-lived, this risk is reduced.
Providers work behind the scenes to close security loopholes through regular patching and updating, so breaches are prevented from causing total carnage. Again, it’s the idea of zero maintenance – letting the provider update and evolve the platform means over time it will improve with no effort required.
It’s highly scalable – FaaS is transparent when it comes to the cost and efficiency of scaling, as much of the work is already done for you. AWS for example, automatically scales functions to hundreds of requests in milliseconds, so there is no need for concern that peak time traffic will slow down or even kill the application servers. A very powerful capability.
It can work for anyone – Serverless is essentially a playground for those wanting to create any type of massively parallel process or application that can be used by everyone. Over time, as serverless becomes the go-to option, a collection of digital skill sets will accumulate and through access to and replication of code, it will allow entire industries to be shared and built upon for years to come.
In our whitepaper “How to become a more data-driven organisation”, we wrote about the five steps that an organisation would need to take, which are: Outcomes: Defining goals and metrics to ensure clear and measurable outcomes Analytics: Implementing and sharing the analytics to improve data-driven decision making Innovation: Testing assumptions through hypothesis testing and learning Data Platform: Gaining new insights