AWS re:Invent 2016: Optimizing the Data Tier in Serverless Web Applications (SVR302)
AWS Lambda empowers developers to build cloud-native web applications or platforms using microservices architecture. The three-tier web app has been a cornerstone architecture pattern for decades in this space. This session walks you through the process of identifying the presentation, logic, and data tiers required to build web applications with AWS Lambda at the core. By using AWS Lambda as your logic tier, you have a wide number of data storage options for your data tier. AWS offers a wide range of database services to fit your application requirements. We dive into methodologies for picking the right database technology based on your application requirements. You learn the benefits of SQL vs. NoSQL database architectures for the data tier of your serverless app. We demonstrate connecting your serverless app to various AWS database offerings including Amazon RDS, Amazon Aurora, Amazon DynamoDB, and Amazon ElastiCache, and elaborate on the setup of each option with AWS Lambda. We also provide guidelines and best practices for implementing this architecture pattern, such as setting up a VPC on Lambda to connect to private resources, leveraging local caching for opportunistic performance improvement, choosing the right language runtime for different workload patterns, managing database connections, and more.