AWS Lambda evolution and re:Invent 2015 news
What AWS Lambda is and how it’s been evolving
First of all, AWS Lambda allows you to NOT think about servers. Which means you no longer have to deal with over/under capacity, deployments, scaling and fault tolerance, OS or language updates, metrics, and logging.
On the other hand, AWS Lambda lets you painlessly drop in your own code, run code in parallel, create backends, develop event handlers and data processing systems, and never pay for idle time.
In practice, AWS Lambda introduced a new serverless world, providing an event-driven scale with the flexibility of sub-second billing.
Back in November 2014, only S3, Amazon DynamoDB, and Kinesis were available for Lambda functions. Since then, plenty of other services have been integrated, like CloudFormation, SWF, CloudTrail, SES, Cognito, API Gateway, SNS, and CloudWatch. In this lecture you learn how we can use the log stream functionality of CloudWatch to monitor the execution of a Lambda function.
Blueprints from AWS partners have recently begun appearing to help you get started quickly by using sample configurations of events sources and Lambda functions.
What’s new in AWS Lambda?
Werner Vogels highlighted recent Lambda-related updates during his second re:Invent Keynote in Las Vegas. Here are the new features Lambda now offers:
- SES inbound rules for custom spam/virus checks.
- CloudWatch Log processing to scan, audit, or index log entries in near real-time.
- Python 2.7 support in all SDKs, CLI, and Console, including the latest SDK (version 1.1.3 of boto3).
- Long-running functions – from only 60 seconds up to 5 minutes.
- Resource sizing between 23 power levels: compute price scales with the power level, the duration can range from 100ms to 5min. Keep in mind that AWS Free Tier includes 1M free requests and 400KGB-s/month.
- Scheduled functions to enable periodic execution with a 5 min granularity (or by using cronjob syntax). For example, you could easily poll SQS or other data sources. CLI and SDK support will be available later this year.
- Functions Versioning by using incremental integer versions, plus $LATEST and custom aliases, so you get total flexibility with versioning (both on API Gateway and Lambda).
- IoT backends, to easily develop backends for your IoT applications.
- VPC support for Lambda execution inside your own VPC. There is a new VpcConfig function configuration parameter. The execution takes just a bit longer, but you can finally access VPC resources such as RDS databases and local Memcached instances.
We are definitely looking forward to getting our hands of whatever is coming next for Lambda. If you want to deepen your understanding of how Lambda works, try this Cloud Academy course and read our recent article: AWS Lambda: an introduction and practical walkthrough.