Serverless computing allows you to build and run applications and services without thinking about servers. With serverless computing, your application still runs on servers, but all the server management is done by AWS. At the core of serverless computing is AWS Lambda, which lets you run your code without provisioning or managing servers. With Lambda, you can run code for virtually any type of application or backend service, and it takes care of everything required to run and scale your code with high availability.
To learn more, join our upcoming tech talks:
- An Overview of Designing Microservices Based Applications on AWS: March 24, 2017 l 10:30 - 11:30 AM Pacific Time
- Building a Development Workflow for Serverless Applications: March 30, 2017 l 12:00 - 1:00 PM Pacific Time
AWS Lambda automatically runs your code without requiring you to provision or manage servers. Just write the code and upload it to Lambda.
AWS Lambda automatically scales your application by running code in response to each trigger. Your code runs in parallel and processes each trigger individually, scaling precisely with the size of the workload.
With AWS Lambda, you are charged for every 100ms your code executes and the number of times your code is triggered. You don't pay anything when your code isn't running.
Serverless computing lets you build scalable and cost-effective applications that scale up or down automatically without the need for provisioning, scaling, and managing servers. You use AWS Lambda to run your application’s code and Lambda triggers your code in response to events, such as HTTP requests or changes to data in an Amazon S3 bucket or Amazon DynamoDB table. You are charged for the duration it takes for your code to execute and the number of times your code is triggered. Since Lambda scales precisely with the size of your workload, you never pay for idle compute.
AWS also provides a set of fully managed services that you can use with Lambda to build serverless applications. These services let you add database and storage tiers for your application or manage connections and messages from mobile and IoT devices. You can use these services together with Lambda to build applications that don’t require provisioning and maintaining servers or administering databases. You also no longer need to worry about application fault tolerance and availability. Instead, AWS provides all of these capabilities for you, allowing you to focus on product innovation and get faster time-to-market.
Delivering a serverless application at scale demands a platform with a broad set of capabilities. Here’s how AWS supports enterprise-grade applications built using serverless computing:
Get started quickly with our collection of reusable templates or blueprints that make it easy for you to use integrations with popular third-party services (e.g., Slack, Algorithmia, Twilio, Loggly, Splunk, Sumo Logic, etc).
Enforce compliance and secure your entire IT environment with logging, change tracking, access controls, and encryption. Securely control access to your AWS resources with AWS Identity and Access Management (IAM). Use Amazon Virtual Private Cloud (VPC) to create private virtual networks which only you can access.
AWS provides highly available, scalable, low-cost services that deliver performance for enterprise scale. AWS Lambda reliably executes your business logic with built-in features such as dead letter queues and automatic retries. See our customer stories to learn how companies are using AWS to run their applications.
AWS provides you with a set of fully managed services that can be used to build highly scalable serverless applications and services. You can build everything from mobile backends to streaming data processors using serverless computing.
Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. Amazon API Gateway allows you to process hundreds of thousands of concurrent API calls and handles traffic management, authorization and access control, monitoring, and API version management.
Amazon SNS is a fast, flexible, fully managed pub-sub messaging service. Use it as a cloud-based mobile app notification service to send push notifications, email, and SMS messages; or as an enterprise-messaging infrastructure. Amazon SQS is a fast, reliable, scalable, fully managed message queuing service. SQS makes it simple and cost-effective to decouple the components of a cloud application.
AWS Step Functions makes it easy to coordinate the components of distributed applications and microservices using visual workflows. Building applications from individual components that each perform a discrete function lets you scale and change applications quickly. Step Functions is a reliable way to coordinate components and step through the functions of your application.
AWS X-Ray helps developers analyze and debug production, distributed applications, such as those built using a microservices architecture. With X-Ray, you can understand how your application and its underlying services are performing to identify and troubleshoot the root cause of performance issues and errors.
You can build serverless web applications and backends using AWS Lambda, Amazon API Gateway, Amazon S3, and Amazon DynamoDB to handle web, mobile, Internet of Things (IoT), and chatbot requests.
Bustle runs a serverless backend for its Bustle iOS app and websites using AWS Lambda and Amazon API Gateway. Serverless architectures allow Bustle to never have to deal with infrastructure management, so every engineer can focus on building out new features and innovating. Read the case study »
You can build a variety of real-time data processing systems using AWS Lambda, Amazon Kinesis, Amazon S3, and Amazon DynamoDB.
Benchling uses a serverless architecture to process genomics data at scale, reducing processing times by 90%. This allows scientists using their platform to spend more of their time focusing on their research. Read the case study »
Start building serverless applications today with these resources.