AWS Lambda is a serverless compute service, allowing you to be able to perform computational tasks without the burden of managing infrastructure provisioning and configuration. It is inherently highly available and scales automatically.
There are many scenarios where, in your Continuous Delivery pipeline (or IT processes in general) where you need to react to an event by performing some processing. Heretofore, we needed to find a server to run that process on, even if the processing wasn’t necessarily tied to the server. This would add complexity to our environment, requiring additional configuration of the server for dependencies, as well as creating a single point of failure and non-scalable bottleneck in our environment.
Now, with Lambda, computation in response to events can happen in the cloud; no server, no configuration, no maintenance. The compute service scales automatically, does not add layers of complexity to managing our infrastructure, and is inherently highly available.
The following diagram depicts a common pattern for using Lambda to perform processing for a CloudFormation custom resource that returns the apprpriate AMI ID based on a metadata search:
Here at Stelligent, we look for opportunities to simplify architectures through the utilization of Lambda to perform serverless event triggered processing. For further details, see some of the content elsewhere on this site