3-tier-arch-serverless / README.md
README.md
Raw

3-tier-arch-serverless

This is the serverless version of a 3-tier architecture application built in my DevOps project.

In this serverless version, all infrastructures used are serverless and these include - Amazon S3, API gateway, Lambda, DynamoDb. Other supporting services that are featured in the project are Route 53, Certificate Manager, and initially CloudFront. However, CloudFront was only initially used for the distribution of the UI content hosted on S3. But because the application is FullStack(Involving both Frontend and Backend), hence the need to serve dynamic contents, CloudFront was omitted and S3 alone was used to serve the UI.

Steps involved in the project are...

  1. Hosting of the application frontend, built with ReactJS on S3, enabling public access.

  2. Configuring Route 53, Certificate Manager and CloudFront to enable the use of custom domain name, ensure security of the website and enable high availabilty.

  3. Creating Lambda function to contain the backend logic, written in ExpressJS, for the appliction.

  4. Setting up API gateway, creating the necessary endpoints required by the application, and connecting API gateway to the Lambda function.

  5. Create a schemaless table in Dynamodb and connecting to this in the backend logic using the aws-sdk library for NodeJS.

  6. Test the API via the UI served by S3.