Cloud

AWS Lambda: The smart person's guide

This comprehensive guide covers AWS Lambda, an on-demand serverless computing service. Learn how Lambda complements other AWS services, and how your business can use it.

cloudcomputingistock-645150938jirsak.jpg
Image: iStock/Jakub Jirsak

The original pitch for cloud computing is the ability to scale computing power to the needs and growth of your organization—without provisioning the physical hardware in advance, or dealing with the corresponding lifecycle tasks of installation, hardware maintenance, and eventual decommissioning. "Serverless" computing services, foremost among which is AWS Lambda, is the logical next step in the "as a service" model of delivering computing resources.

This TechRepublic primer on AWS Lambda is a quick introduction to the object storage service, as well as a "living" guide that will be updated periodically as further updates and integrations are released.

SEE: All of TechRepublic's smart person's guides

Executive summary

  • What is AWS Lambda? Lambda is the serverless computing component of Amazon Web Services (AWS).
  • Why does AWS Lambda matter? With AWS Lambda, it is possible to execute code on-demand without managing a server for that code to run on.
  • Who does AWS Lambda affect? Non-continuous workloads such as image processing or analytics processing are good candidates to be adapted to AWS Lambda.
  • When is AWS Lambda happening? Lambda was added to AWS in November 2014.
  • How do I get AWS Lambda? You can get started with AWS using the free tier, which allows limited free use for up to one year.

SEE: Cloud computing policy (Tech Pro Research)

What is AWS Lambda?

AWS Lambda is the serverless computing component of the AWS catalog, enabling developers to execute arbitrary code on demand, without the need to provision or manage a "full" server, or a computing instance like Amazon EC2. After being triggered, AWS Lambda tasks are typically executed within milliseconds. Processing time for a given task is limited to 300 seconds, with usage billing metered in units of 100ms.

As with any other cloud computing service, billing reflects the amount of computing resources actually used—if no task is being executed, there is no charge.

Additional resources:

Why does AWS Lambda matter?

Smart deployment of AWS Lambda in your organization can increase performance of existing infrastructure as tasks are offloaded onto Lambda instances. As AWS Lambda scales automatically to compensate for incoming tasks, it can also decrease the cost of cloud deployments for situations in which variable workloads in EC2 can be offloaded to Lambda, decreasing the need for high-capacity instances that are underutilized.

Because of the nature of serverless computing, the potential attack vector is decreased, as the instance is destroyed after the task has been completed, thereby increasing security.

Additional resources:

Who does AWS Lambda affect?

AWS Lambda is useful for handling cloud-facing processes with various types of data. For example, in a photo-sharing website, AWS Lambda can be invoked to resize images for thumbnails when a photo is added to an Amazon S3 bucket. An AWS Lambda operation can be triggered in response to any API call in AWS.

AWS Lambda allows for the execution of Python, Java, and Node.js scripts, as well as C# through .NET Core. These scripts can be used to invoke any arbitrary process supported in Amazon Linux.

Additional resources:

When is AWS Lambda happening?

AWS Lambda was launched in November 2014 at the annual AWS re:Invent conference. Real-world deployments have increased recently as developers become more familiar with the platform. Amazon touts VidRoll, Localytics, MLB Advanced Media, The Washington Post, and Zillow in case studies as early adopters of AWS Lambda.

Additional resources:

Which services compete with AWS Lambda?

Microsoft's Azure Functions service is a direct competitor to AWS Lambda. Additionally, Azure Service Fabric provides the ability to separate Azure applications into microservices, which can be invoked and maintained separately from the underlying infrastructure. This functions as a somewhat abstract combination of Docker-style containers and serverless computing services like AWS Lambda.

Google's competing service is called Cloud Functions and is available in alpha.

Additional resources:

How do I get AWS Lambda?

Anyone with an Amazon account can sign up for AWS, which includes access to AWS Lambda. In the AWS Free Tier, a monthly allotment of 1 million free requests and up to 3.2 million seconds of compute time per month is provided freely. Unlike other services in the AWS Free Tier, AWS Lambda access does not expire after one year; also, this free compute time is available to new and current users.

For startups, Amazon has two tiers of free access. The Portfolio package offers up to $15,000 of promotional credit for up to two years, whereas the Portfolio Plus package provides the option of that benefit or up to $100,000 of promotional credit for AWS, which expires after one year. The Portfolio package provides up to $5,000 of support credit for one year; Portfolio Plus doubles this amount, and extends the offer to two years. Exact amounts and credit validity vary between depending on which startup accelerator your organization is aligned with.

Additional resources:

About James Sanders

James Sanders is a Java programmer specializing in software as a service and thin client design, and virtualizing legacy programs for modern hardware.

Editor's Picks