Skip to content

This project provides practical experience in setting up an AWS S3 bucket, utilizing AWS Lambda for file processing, and connecting these services with a Django web application. It highlights skills in managing cloud infrastructure, handling file uploads, and creating secure, scalable web applications.

Notifications You must be signed in to change notification settings

luciyaroshni/CODETECH-Task3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CODETECH-Task3

NAME: ROSHNI THADEVUS
COMPANY: CODETECH IT SOLUTIONS
ID: CT8CC1289
DOMAIN: CLOUD COMPUTING
DURATION: JUNE - AUGUST 2024
MENTOR:

Overview of the TASK

BUILDING A SERVERLESS APPLICATION WITH AWS LAMBDA

Create a serverless application using AWS Lambda. This project will help you understand serverless computing and how to build applications without managing servers.

image

image

image

image

Key Activitie

  • Setup AWS S3 Bucket:

    • Created an S3 bucket for storing uploaded files.
    • Configured bucket policies to handle file access permissions.
  • Developed AWS Lambda Function:

    • Created a Lambda function to process file uploads from a web application and store them in the S3 bucket.
  • Configured API Gateway:

    • Set up API Gateway to serve as an interface between the web application and the Lambda function, enabling file uploads through HTTP requests.
  • Django Application Development:

    • Built a Django web application with a file upload form, integrated with the API Gateway to facilitate file uploads.
  • Implemented Frontend:

    • Designed a user-friendly HTML form for file uploads, styled with CSS for a better user experience.
  • Testing and Debugging:

    • Tested the entire setup to ensure smooth file upload operations, debugged issues, and made necessary adjustments.

Technology Used

  • Amazon Web Services (AWS):

    • AWS S3: Used for scalable storage of uploaded files.
    • AWS Lambda: Serverless compute service used to process file uploads and interact with the S3 bucket.
    • AWS API Gateway: Managed API service used to expose Lambda functions as RESTful APIs.
  • Django Framework:

    • Python-based web framework used to build the web application for file uploads.
  • Python:

    • Programming language used for both the Django application and the Lambda function.
  • HTML/CSS:

    • Technologies used for creating and styling the file upload form on the web application.
  • boto3:

    • AWS SDK for Python, used in the Lambda function to interact with S3.

Key Insights

  • Serverless Architecture Benefits:

    • Utilizing AWS Lambda and API Gateway provided a cost-effective and scalable solution for handling file uploads without needing to manage server infrastructure.
  • Integration Challenges:

    • Encountered and resolved issues related to binary data handling and CORS configuration, which were crucial for ensuring proper communication between the web application and AWS services.
  • Security Considerations:

    • Configured bucket policies and access controls to ensure secure handling of uploaded files, avoiding unnecessary public access.
  • User Experience:

    • Designed the file upload interface to be intuitive and easy to use, enhancing user interaction with the application.
  • Troubleshooting:

    • Gained experience in debugging AWS Lambda functions and handling API Gateway configurations, leading to a deeper understanding of cloud-based application integration.

Designed to demonstrate the integration of cloud storage and serverless computing, this project provides practical experience in setting up an AWS S3 bucket, utilizing AWS Lambda for file processing, and connecting these services with a Django web application. It highlights skills in managing cloud infrastructure, handling file uploads, and creating secure, scalable web applications.

About

This project provides practical experience in setting up an AWS S3 bucket, utilizing AWS Lambda for file processing, and connecting these services with a Django web application. It highlights skills in managing cloud infrastructure, handling file uploads, and creating secure, scalable web applications.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published