What a serverless deployment costs depends on a range of variables. The real question is whether it is more cost-effective than traditional means of software deployment.
The key issues to bear in mind when considering the suitability of the serverless model for a software deployment are the nature of the application, and the degree to which you draw upon the services of third parties for code, and for services such as hosting and etc.
Serverless computing is a highly modular deployment methodology, with code consisting of functions that behave in a particular way in response to a particular input.
Among its core cost-benefits is its fast spin-up and spin-down time. A function is invoked, does its thing, and spins down again, so billing can be highly granular: you pay only for the time the function is working, and for the data it outputs. This compares to a traditional, full-function business app where you might pay for a server that runs 24/7, whether or not it is delivering tangible benefits to the business.
Before we look at which applications are suited to serverless, let's look at those applications that may not yet be ready for the new paradigm. These include monolithic production applications such as sales management systems consist of big chunks of code, interconnected and tightly coupled within the application. High performance computing and applications involving high volumes of processing are also unlikely to be suitable because of
The serverless model is different in one core way: serverless applications make use of modular functions, each designed for a specific task. Consequently, serverless functions sit in a web of interdependencies, which means issues such as latency need to be taken into consideration when designing applications. Because functions are dependent on third party libraries and remote web access via APIs, for example, and therefore on external events, they are dependent on the performance of those third-party systems and the speed of the connections between them.
Poorly designed applications using serverless functions could therefore be more affected by timeouts if latency is high. From an end user perspective, this could manifest itself as higher latency and lower performance, and needs to be taken into account at the design stage.
In that light, a business analysis of how and when to switch to serverless needs to consider not just the cost of development and ongoing costs such as compute charges but also the design and cost of their interconnections. Note too that each call that a function makes to another function or remote web API may be chargeable by the API provider, in addition to network usage costs.
Serverless savings and costs
Because costs per function execution are very low compared to monolithic applications, serverless computing cuts the amount and therefore the cost of server time consumed, as well as time required for software and hardware maintenance, for example, enabling that time to be spent instead on innovation.
Therefore, where serverless scores from a business point of view is in event-triggered applications, where a function's operation is quick and stateless, thereby incurring minimal compute charges. These can include auto-scaling websites, which can be deployed without needing to worry about infrastructure, or event streaming, which can grab data to feed your analytics systems, or to trigger capture of video surveillance footage following detection of movement.
However, while serverless code tends to be smaller, lighter and therefore easier to maintain, each function will need configuration code, as well as code that makes and maintains the links that each function requires. Each function will also need maintenance and updating as changes occur, a time cost that must be factored into your planning.
Serverless computing is at an early stage but the signs are clear: this is the next stage of cloud development. Like all new technologies, it will take a little time for it to mature and for the real benefits and cost efficiency to emerge. However, if you run a fleet-footed company and want to stay ahead of the competition - and with Google's Cloud Functions Platform providing a free tier with $300 credit - the time to start investing in and taking advantage of this new technology is now.