Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Introduction Gallery Implementation Demo Questions
Project Presentation
Saad Arif
Dept. of Electrical Engineering and Computer ScienceUniversity of Central Florida - Orlando, FL
November 7, 2013
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
Introduction
Cloud Computing provides on-demand delivery of IT resourcesvia the Internet with pay-as-you-go pricing
Amazon provides Amazon Web Services (AWS)
AWS provides
Compute servicesStorage servicesDatabase services
Why AWS
Highly durable storage servicesLow latency databsesWide range of application development tools available at AWSMarketplacePayment for services only as they are usedFlexible capacityGlobal reach
Introduction Gallery Implementation Demo Questions
AWS Cloud Computing Use Cases
Web, mobile and social apps
Big data
Backup and storage
Digital media
Enterprise application
Gaming
Introduction Gallery Implementation Demo Questions
Project Goals
General goals
Learn about AWSLearn about various serivces offered by AWSLearn how to launch a service instance and connect to it
Specific goals
Develop application on AWSLearn Amazon Elastic Cloud Compute (EC2) for computeLearn Amazon Elastic Block Storage (EBS) for storageLearn Amazon Relational Database Service (RDS) for database
Introduction Gallery Implementation Demo Questions
Application
Requirements
Website known as ’Gallery’ for sharing photosUser must login to upload dataShould have database of users and their uploadsUser can view photos after logging in
Services used
EC2 to host the webserverEBS to provide storage for uploaded dataRDS to provide database for users and their uploadsCloudWatch for performance monitoring
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
Application Details
Navigations
Login a userRegisteration for a new userMy photosUpload a photoLogoutContact infoSeveral picture libraries
Introduction Gallery Implementation Demo Questions
Application Details (contd)
Registration page
User provides personal infoRequired fields are ’FirstName’, ’Username’ and’Password’Once registered, userautomatically gets logged in
Validation checks
Username exists or notBoth passwords match
Introduction Gallery Implementation Demo Questions
Application Details (contd)
Logged user privilages
Can upload photos on’Upload’ tabCan view uploaded photos on’My Photos’ tabCan view all submission on ’AllSubmissions’ page
Introduction Gallery Implementation Demo Questions
Application Details (contd)
User photos
’My Photos’ provides list ofuser uploaded photos’Upload Photos’ providesinterface to upload new photo
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
Elastic Compute Cloud - EC2
Provides resizable compute capacity in the cloud
Simple web based interface
Reduces time required to obtain and boot new server instances
Designed for use with other Amazon Web Services
Reliable
Secure
Located in a Virtual Private Cloud (VPC)Access defined by security groups (allow/block IP or range ofIPs)
Inexpensive
Easy to start
Elastic IPs
Introduction Gallery Implementation Demo Questions
Elastic Compute Cloud - EC2 (contd)
Used: Amazon Linux AMI
Configured LAMP server (Linux, Apache, MySQL, PHP)
Instance type: t1.micro
Region: Oregon
Using elastic IP
Introduction Gallery Implementation Demo Questions
Elastic Block Storage - EBS
8 GB storage mounted on EC2
Used for storing image files
Introduction Gallery Implementation Demo Questions
Relational Database Service - RDS
Simple to deploy
Managed
Compatible
Fast, predictable performance
Scalable
Reliable
Designed for use with other Amazon Web Services
Secure
Similar security groups provide firewalls
Inexpensive
Introduction Gallery Implementation Demo Questions
Relational Database Service - RDS (contd)
Used: MySQL
Instance type: db.t1.micro
Region: Oregon
Belongs to same VPC as EC2 instance
Allows webserver on EC2 to access MySQL server on RDSwithout security group
Introduction Gallery Implementation Demo Questions
Database Structure
Tables: tbl Members, tbl Uploads
Root directory is on EBS volume
fileLink provides path to each uploaded photo
Introduction Gallery Implementation Demo Questions
CloudWatch
Provides performance monitoringVarious performance matrices available
Introduction Gallery Implementation Demo Questions
CloudWatch
Provides performance monitoringVarious performance matrices available
Introduction Gallery Implementation Demo Questions
Program Flow
Clients connect to the webserverrunning on EC2
EC2 interacts with both MySQLserver on RDS and EBS
When client uploads photo
Webserver (EC2) saves datafile on EBSWebserver (EC2) sends file’slocation info to MySQL server(RDS)Webserver (EC2) responds toclient after success
Introduction Gallery Implementation Demo Questions
Program Flow (contd)
When client requests for an uploadedphoto
Webserver (EC2) queriesMySQL server (RDS)MySQL Server (RDS) replieswith the path to the fileWebserver (EC2) createsredirect link for the pathWhen client clicks the link,data is copied from EBS toWebserver (EC2) anddisplayed to client
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
Demo
Public DNS for the webserver instance on EC2 is
http://ec2-54-200-253-133.us-west-2.compute.amazonaws.com/
Public DNS for the MySQL server instance on RDS is
mysqlinstance.crlfby6hbult.us-west-2.rds.amazonaws.com:3306
Introduction Gallery Implementation Demo Questions
1 Introduction
2 Gallery
3 Implementation
4 Demo
5 Questions
Introduction Gallery Implementation Demo Questions
Questions