Developing high-performance web applications in the real world requires the use of a cloud provider, and Amazon Web Services is widely recognized as the leader in cloud technology. In this course, AWS Developer: Getting Started, you will learn how to develop applications that utilize many of the services in AWS. You will also deploy applications to EC2 with Elastic Beanstalk, store and retrieve data in RDS and DynamoDB, and architect infrastructure with CloudFormation. When you're finished with this course, you will have experience working with AWS services that will help you as you work on your own applications.
Course Overview Hi everyone. My name is Ryan Lewis, and welcome to my course, AWS Developer: Getting Started. I'm a web engineer at Expedia, and I work with AWS every day. Amazon Web Services is the largest cloud provider in the world, and is estimated to generate more revenue than its three biggest competitors combined. With customers like Netflix, Dropbox, and Expedia this should come as no surprise. In this course we are going to learn the fundamentals of developing and deploying web applications to AWS. Some of the major topics that we will cover include, deploying scalable applications using EC2 and Elastic Beanstalk, storing static content in S3, and edging it with Cloud Front, creating reproducible infrastructure with Cloud formation templates, and using managed databases with RDS and DynamoDB. By the end of this course you'll feel comfortable developing your own applications with AWS. Before beginning this course you should be familiar with how web applications work, and it may help to have some experience with Node. js. I hope you'll join me on this journey to learn Amazon Web Services with the AWS Developer: Getting Started course at Pluralsight.
Hosting All the Things with S3 Welcome back to AWS Developer: Getting Started. I'm Ryan Lewis, and thanks for sticking with me in this course to become an AWS developer. In this clip we're going to start working with the AWS SDK, and modify our code to interact with Simple Storage Service. In our application S3 is going to take the place of asset serving and storage in several different ways. Let's go over what we'll be looking at in this course. I'll start off with a high level overview of how S3 works, and the different configuration options you have. Then, I'll cover buckets in detail, since they are the main S3 structure. Next, we'll start implementing our application changes as we upload assets to S3. We'll still need to modify our code to store new pizza images in S3, so we'll do that as well, and finally, we'll look at some additional features with S3, such as enabling cores. S3's simplicity is what makes it so powerful, and after working with it you too will be convinced of its essential usefulness in modern web applications.
A Tale of Two Databases with DynamoDB and RDS Welcome back to AWS Developer: Getting Started. My name is Ryan Lewis, and this module is going to be all about databases. Amazon gives you quite a few options to find a database service that matches your needs. Whether it's managed relational databases or low configuration NoSQL tables, you'll be able to find the best database for you with AWS. Let's take a look at what we'll be covering in this module. We'll start by looking at Amazon's relational database service, and I'll go over it at a high level. We'll look at the database options you can choose with RDS, and I'll describe some of the differences to help you choose. Next, we'll talk about configuration options and scaling before we finally create our first database instance. Then, we'll finally setup our tables, and connect to the database with our application, so we can start storing data in it. After RDS I'll introduce Amazon's NoSQL option with DynamoDB, and we'll learn all about tables and throughput. Configuration is pretty light with DynamoDB, so we'll be jumping into the code very quickly, and have our code pushing and pulling data from Dynamo before you know it. There's a lot of code to work in this module, so make sure to get comfortable and ready to do some typing.
Automating Your App with Elastic Beanstalk and CloudFormation Welcome back to AWS Developer: Getting Started. I'm Ryan Lewis, and in this module we're going to look at two different methods to automate and simplify the creation of resources and deployment of your application. We've been creating resources and deploying our application manually so far, so I think you'll really be able to appreciate what CloudFormation and Elastic Beanstalk can do for you. We'll start by discussing some of the fundamental concepts of CloudFormation. Then we'll use a CloudFormation template to create a stack. Next, I'll introduce Elastic Beanstalk, and explain how it can automate deployment for your application. We'll look at some of the configuration options available in Elastic Beanstalk, and then we'll create an environment, and deploy our application.
Speeding Up with CloudFront and ElastiCache Welcome back to the final module in AWS Developer: Getting Started. I'm Ryan Lewis, and in this module we're going to utilize a couple of AWS services to speed up the performance of our web application. CloudFront and ElastiCache both make data and resources available quicker, meaning there's less time spent retrieving data from databases or assets from a file store. Both of these services require few changes to our actual application code, making it super easy to add these optimizations. Let's take a look at what we'll be covering in this module. I'll start by introducing CloudFront and explain how you can use it to fight geographic latency. Then we'll position our app behind a CloudFront distribution and look at some data around the behavior of the distribution, so you can determine whether your caching is is operating as expected. Next, we'll learn about ElastiCache and the different engines you can use to easily and quickly cache data for your application. Then we'll set up our first cluster, and modify our code to use Redis instead of local memory for our user sessions. Let's get started.