Skip to content

PradnyaC11/Image-Recognition-Service

Repository files navigation

Project Description

This project is part of CSE 546 - Cloud Computing course.

Architecture of the application -

Alt text

The web tier will receive face recognition requests from clients and forward it to the App Tier for model inference using the SQS queue. It should also return the recognition result from the App Tier as output to the users. The input from each request is a .jpg file, and the output in each response is the recognition result. Output would be in form of: :<classification_results> The Web Tier also runs the autoscaling controller, which determines how to scale the App Tier. AWS autoscaling features are not used for this, instead my own auto scaling algorithm is implemented.

The App Tier will use the provided deep learning model for model inference. The App Tier should automatically scale out when the request demand increases and automatically scale in when the demand drops. The number of App Tier instances should be 0 when there are no requests being processed or waiting to be processed. The number of App Tier instances can scale to at most 20 because we have limited resources from the free tier.

Data Tier consists of two S3 buckets and stores all inputs (images) and outputs (recognition results) in separate bucket for persistence.

About

Elastic Cloud Image Recognition Service on AWS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published