The AWS Lambda service not only executes code when certain events occur, but can also control the related compute infrastructure. The service is in preview mode currently.
“You can use AWS Lambda to extend other AWS services with custom logic, or create your own back-end services that operate at AWS scale, performance, and security. AWS Lambda can automatically run code in response to modifications to objects in Amazon S3 buckets, messages arriving in Amazon Kinesis streams, or table updates in Amazon DynamoDB,” the company said.
There are many types of triggers, Amazon argued. Lambda, for instance, could trigger something as simple as an alert, conduct data calculations when new data is updated, or compress documents when those are loaded.
Fuller backend services can also be invoked. “AWS Lambda makes it easy to build back-end services to perform workloads such as image analysis, document transformation, and indexing. This enables you to architect your applications more effectively by moving client-side logic to a Lambda function so that you can avoid client platform variations, reduce battery drain, and enable easier updates,” Amazon said
Scheduling such tasks, such as cleaning up archives, can do done at night when the network is less taxed.
Finally, Amazon sees a role in supporting the Internet of Things (IoT). “AWS Lambda functions can be triggered by events from connected devices like weather sensors or house alarms. For example, you could create an AWS Lambda function that sends a customized Amazon SNS notification when a smart thermostat indicates that the temperature is outside a defined limit. You could also create a Lambda function to monitor and act on device data in an Amazon Kinesis stream, enabling you to easily connect smart appliances, home lighting systems, connected parking meters, or industrial machines to AWS services,” the company said.
Besides kicking off code execution, Lambda performs administration of the underlying operating systems, servers, scaling, provisioning and patch deployment.
AWS Lambda is charged on a pay as you go basis, with fees based on the number of requests processed and how long it takes the code to run. “The Lambda free tier includes 1M free requests per month and 400,000 GB-seconds of compute time per month,” Amazon said. “Lambda counts a request each time it starts executing in response to an event notification or invoke call, including test invokes from the console.”