1 of 12

building an application with AWS

SJU ACM STUDENT CHAPTER

Sign In Form:

2 of 12

What Goes into making an app?

  • Computation - Necessary for processing data, performing tasks, rendering content, etc.
  • Storage - Used to store and retrieve all types of data like photos, documents, messages, and user information.
  • Databases - useful in storing and managing structured data such as user information, transaction history, and inventory data.
  • Networks - Enables connection between devices such as the host or the users of the application.
  • Security - ensuring your data at rest and data in transit is encrypted and not accessible to the public.

3 of 12

Importance of cloud services

  • Are you going to be running your application hosting hundreds of thousands of users from your laptop?
  • do you want to spend up to ten thousand dollars upfront on servers to manage users who don’t even exist yet?
  • do you want your application to take an hour to load in other countries?
  • even if you have servers, maintaining them is not worth it if they are not being used fully, this is why cloud services are important.
  • when you use cloud services, you pay only for what you use
  • cloud services also have regions where you can launch your applications across the globe
  • popular services:
    • amazon web services(aws) , microsoft azure, Google cloud platform

4 of 12

Why aws?

As AWS expands its infrastructure and customer base, it achieves economies of scale. This means that the cost per unit of providing cloud services decreases as the scale of operations increases. AWS can pass on these cost savings to customers through price reductions while still maintaining healthy profit margins.

5 of 12

Cloud computing Service model Categories

  • Infrastructure as service (iaas) - cloud company provides infrastructure like virtual machines, storage, and network capabilities. Allows user to manage almost the entirety of their application
  • platform as a service (paas) - cloud company provides everything from iaas as well as managing the infrastructure like the virtual machines, networks, databases for users so they can focus on their code
  • software as a service (saas) - software applications provided to help manage your application and company (ex: google workspace, microsoft office)

6 of 12

Aws services for you

  • Elastic beanstalk
  • s3
  • ec2
  • vpc
  • shield/iam
  • RDs
  • Route 53
  • Price calculator

7 of 12

virtual private cloud (vpc) & aws elastic cloud compute (ec2)

  • vpc - allows user to create a virtual network environment in the cloud that is isolated from other environments. you can specify routes to storage, databases, in and out traffic using networking access control lists (ACLS), and scale it across many availability zones in a region.
  • ec2 - provides compute capacity of many sizes, and memory of many sizes that users can specify for their specific needs. additionally, you can set up triggers to add or remove ec2 instances depending on the traffic to your application using load balancers.
  • can launch an ec2 instance according to which vpc needs it. for example: if your application has 2 vpcs, one in america, one in china, and while america is sleeping, china is awake, you can remove an instance in america and launch one in china and vice versa. this can also be done automatically.

8 of 12

simple storage service (s3)

s3 - scalable object storage that essentially has unlimited storage. it can scale up or down depending on the requirements, it can be replicated across regions and availability zones to ensure availability. there are tools like the key management system (kms) that allows users to protect their data in transit. s3 can be used for data backup, content storage and retrieval, data archiving, and more. it can even be used as a nosql database (similar to aws dynamodb).

note: object storage means that it can be any type of data such as videos, audio, documents, web content (html/css/js files), and more.

9 of 12

Relational database service (rds) & route 53

  • rds - is a service that manages your database for you, meaning you don’t have to set it up, scale it, or manage it. aws does everything for you, all you need to worry about is your application.
  • route 53 - allows you to register domains for you application. route 53 has a domain name system (dns) that controls the flow of traffic and can route traffic from the user’s domain names to their aws resources. route 53 also provides health checks to make sure your resources are properly working. if they are not, route 53 will route the application users to a working service.

10 of 12

elastic beanstalk

  • elastic beanstalk easily allows users to run and manage their web applications by automatically configuring a lot of the infrastructure like ec2 instances, load balancers (which scale ec2 instances up or down), and simple configuration of all of the other services i previously mentioned: rds, s3, and vpc (must choose a vpc for your elastic beanstalk to run in from the start).

Link for elastic beanstalk simple application set up:

https://www.youtube.com/watch?v=2BoVhej0QVI

11 of 12

12 of 12

Thank you!