Most companies today develop applications and deploy them on servers — whether on-premises or in the cloud. That means figuring out how much server, storage and database power they need ahead of time, and deploying all of the hardware and software it takes to run the application. Suppose you didn’t want to deal with all of that and were looking for a new model that handled all of the underlying infrastructure deployment for you?
Amazon Web Services’ Lambda Service offers a way to do just that today. With Lambda, instead of deploying these massively large applications, you deploy an application with some single-action triggers and you only pay for the compute power you use, priced in 100 millisecond increments of usage. You can have as many triggers as you like running in tandem or separately. When the conditions are met, it triggers the programmed actions.
Welcome to the world of the serverless app.
Over the years, the rate of deployment speed and how long these deployments live has gone down dramatically — and Lambda reduces that to milliseconds.
We are in the midst of an evolutionary shift where Lambda encapsulates shifting developer priorities and requirements. As I wrote last year when Lambda launched at AWS re:invent:
As AWS’s CTO Werner Vogels pointed out, this will enable programmers to reduce their overall development effort. You simply write the code and define the event triggers, and it will run for you automatically when the conditions are met.
Triggers could be actions like a user uploading a file from a smart phone or clicking the Buy button on a website, or they could be machine-to-machine actions without humans involved. The idea is that they are flexible so just about anything can be a trigger. What’s more, developers can use familiar programming tools to create the triggers, and Amazon provides a list of prewritten common ones.
Those conditions could be met every fraction of a second as with an Internet of Things scenario with sensors constantly feeding an application a stream of data or it could be weekly. For instance, suppose you have a drone feeding pictures of power lines once a week. Each time the drone uploads the photos, it triggers certain actions. When the photos are processed and stored, the work is done. You don’t need a server sitting there to do that and Amazon is giving customers an option to pay as you go. It’s all about providing a simpler and easier way to deploy applications without worrying about the underlying infrastructure needed to run it.