We recently attended Amazon Web Services (AWS) re:Invent in Las Vegas and came away with lots of new insights that we hope to apply to our client interactions and development. One of the hottest topics at the conference was Serverless Computing, aka Cloud Functions. Lambda, AWS' Serverless Cloud offering, has been around since 2014, but we expect that over the next year we’re going to see its impact growing significantly. In fact, Serverless is becoming pervasive in every new service offering from AWS. With that in mind, we wanted to give you a brief overview of Serverless computing, its benefits, and who’s leading the charge in this exciting field, so you can be ready for the “Serverless wave” to come.
What is Serverless?
Serverless is a bit of a misnomer because Serverless computing still relies on servers. The difference with Serverless is that all the server management and capacity planning decisions are completely hidden from the developer or operator. This frees the developer to focus on creating innovative software, without having to worrying about the infrastructure and operations necessary to run it. In fact, Serverless Cloud providers often have a library of “commodity” functions that developers can choose from to perform basic backend functions like authentication, image sizing, or voice integration, like Alexa.
According to InfoWorld:
“Serverless computing represents yet another leap in developer efficiency, where even virtual infrastructure concerns melt away, and libraries of services and functions reduce once again the amount of code developers need to write from scratch.”
Serverless FaaS (Function as a Service) computing empowers developers to more freely ideate and, in turn, create more compelling, innovative solutions. In most cases, it becomes the “glue” between managed service instances, enabling solutions to be developed in a fraction of the time historically required.
For organizations, Serverless can offer game-changing benefits, like:
1. Faster development for decreased time to market
2. On-demand scalability without having to rolling the dice
3. Reduced spending on infrastructure and code “commodities”
4. More time to spend developing features that will impact UX
5. Improve performance (reduced latency and geolocation response)
Where to get Serverless?
AWS, Google, Azure, and IBM all have Serverless services. And while all of these can deliver against the benefits listed above, AWS Lambda is clearly outpacing the competition. Why?
- You can skip Containers – AWS Lambda allows customers doing greenfield development to completely skip Container technology.
- Pay for what you use – AWS Lambda allows customers to only pay for the service when a function is executed, instead of paying for idle time regardless of whether or not your API is in use.
- Speak in lots of different languages – AWS Lambda provides a stand-alone execution environment for individual functions written in Node.js, Python, Java, or C#.
These are just three of the ways that AWS Lambda is outpacing the other Serverless providers. We haven’t even touched on Lambda’s ability to automatically scale your application in real-time, its inherent low risk (because it’s tied to AWS, the world’s largest Cloud computing network), or the fact that, through Lambda, your code is more resilient when under load and in sub-optimal execution conditions. These are all additional benefits of AWS Lambda.
NOTE: We are also excited about Google’s Cloud Functions Service, which is currently in BETA. We will be providing more details about this service in comparison to Lambda.
If you’re looking for a development partner with AWS and serverless expertise, DVmobile can help. Contact us for a free consultation, or read more about how we engage our clients.