Serverless computing has recently reached a new place in its development. Developers are beginning to understand the value of serverless architecture. This could result in a new startup ecosystem developing around serverless computing.
However, “serverless” isn’t 100% serverless. It enables a specific developer to set “event triggers”, leaving infrastructure requirements fully up to its cloud provider. A vendor delivers just the right amount of compute, storage, and memory; leaving the developer out of that equation.
As with all new technological developments, new sets of problems are always being posed. This can open doors down the road for companies who are building security, libraries, APIs, tooling, and many more things that Serverless may require.
Physical servers came with a lot of wasted capacity. That of which, began the development of virtual machine than allowed IT to divide a single physical server in the several virtual ones. That being a large breakthrough, assisted in the launch of successful companies like VMware. This also opened possibilities in the world of cloud computing; which is the use of several remote servers to store, manage, and process data instead of one local or personal server or computer.
After physical servers, there were containers; which TechTerms lists as “a software package that contains everything the software needs to run”. Containers allow the developer to breakdown a program into discrete pieces to run more efficiently. They became popular in the development of Docker and Kubernetes open source platforms.
Again, Serverless is not “serverless” due to the need for compute, storage, and memory in order to run. But, it is favored because it takes away the need for the developer(s) to worry about the server and its specifics. With Serverless, the cloud vendor handles all the coding that goes into connecting the components of the program through their virtual or physical hardware. It is less work and concern for the developer.
Eventually, this could be more than just another way to code. It has the potential to shift the way we think and go about programming all together, as well as its relation to underlying infrastructure. Of course, they are not at that point yet. As with anything, a lot of work needs to get done before Serverless takes over. Major vendors have already launched their own similar serveless products with Google Cloud Functions, AWS Lambda, and Microsoft Azure Functions. Future possibilities are endless.
The general manager at AWS Lambda, Tim Wagner, explains that an advantage of serverless computing is that it allows developers the possibility to wipe away all challenges that come with managing servers. He explains, “there is no provisioning, deploying, patching or monitoring — all those details at the the server and operating system level go away”. This gives developers the opportunity to reduce the coding process. The programmer has to define the event or function, then the cloud provider figures out the needed amount of underlying infrastructure that would be required in order for it to run. An amount of which can be as small as one single line of code.
Serverless computing still has a very long way to go, but we could be looking at the future straight in its face. More information on this can be found in detail on Tech Crunch’s website.