![]() |
Application Transformation continues to evolve and offer greater options. The newest source of disruption in software development and cloud-native architecture is a concept called ‘Serverless’. In this model developers simply upload their code (or “Function”) to a Serverless cloud environment where it’s automatically run when necessary – things like servers, configurations, availability, provisioning, capacity, scaling are all handled by the platform. Some other key characteristics of Serverless applications include:
Of course the name ‘Serverless’ is pretty misleading – the application has to run on a server somewhere. While the model doesn’t eliminate the need for servers it does eliminate the need for developers to care about servers, operating systems and the runtime environment, which are effectively now outsourced to the service provider. The name Serverless refers to the fact that the model almost full abstraction between the developer and how software is actually deployed and run. But when hearing the Serverless story a question instantly comes to mind – isn’t that what PaaS was supposed to do? Conceptually yes, but in most cases PaaS platforms still require you to identify scaling parameters and thresholds for a given application. In a Serverless environment scaling is instead handled automatically by the service provider for each individual request. In addition by design Serverless platforms bring the entire application up and down for each individual request (sometimes in the matter of milliseconds), something that PaaS runtime environments were definitely not designed to do. Due to these facts, Serverless architectures are particularly well suited for use cases and applications that are:
As you can imagine Serverless provides an ideal platform for low-cost experimentation, not just with the actual application but also to better understand the economics of the function as well. Serverless provides a direct and easy way to understand the cost of an application on a per transaction or customer basis. Linking this to delivered value opens up a new way of building, analyzing and potentially monetizing services. In addition to services for mobile apps, websites and IoT other interesting early use cases that have emerged for Serverless include:
So what’s the catch? Given their relatively recent introduction, Serverless applications also currently come with some significant limitations that are particularly relevant for the enterprise. These include:
Like Cloud Native and microservices, Serverless architectures in the near term are going to be a far better fit in the enterprise for greenfield development rather than legacy modernization. For some use cases it will be appropriate, for others not – as with innovation with any emerging or new paradigm the key is experiment with Serverless in targeted scenarios where it makes sense. Over time the boundaries between Serverless and PaaS are likely to blur just as they are currently with Containers, broadening the applicability of the model. In the meantime a focus on exploration and experimentation appears to be the best course of action in the enterprise. Interested in learning more about how to drive Application Transformation using Serverless, Cloud Native and other disruptive software development architectures? Contact us to learn more about how Dell EMC Services can help. The post Defining the Elusive Serverless App appeared first on InFocus Blog | Dell EMC Services. |
