Skip to content

Service to store and retrieve Questions & Answers data

Notifications You must be signed in to change notification settings

Elemental-Designs/QA-Service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Question & Answers Service

Tech Stack

Postgres NodeJS Express.js Mocha NPM AWS Git Postman

Table of Contents

Project Overview

Initially implemented service to replace API and query from a Relational Database

Handled & ETL 10 million rows of data into Postgres

Service initially handled 100 Clients per second with a response time of 62ms

Optimized and horizontally scaled service to handle web scale traffic up to 2000 Clients per second with a response time of 98ms

Initial Service Diagram

drawing

Integrating Load Balancer Diagram

drawing


Performance & Optimizations

Requesting to Retrieve Questions Performance

  • Before - Utilizing 1 Server Instance & 1 DBMS Instance

    Max RPS: 1600 clients/sec over 1 minute

    Response Time: 1986ms

    Error Rate: 0%

  • After - Utilizing a Load Balancer Instance with 2 Server Instances & 1 DBMS Instance

    RPS: 1600 clients/sec over 1 minute

    Response Time: 79ms

    Error Rate: 0%

Before After
Before Load Balancing afterLoadBalancing
  • Max RPS - Utilizing a Load Balancer Instance with 2 Server Instances & 1 DBMS Instance

    RPS: 2000 clients/sec over 1 minute

    Response Time: 144ms

    Error Rate: 0.1%

Max
Service Diagram

Requesting To Retrieve Answers Performance

  • Before - Utilizing 1 Server Instance & 1 DBMS Instance

    Max RPS: 1500 clients/sec over 1 minute

    Response Time: 1989ms

    Error Rate: 0%

  • After - Utilizing a Load Balancer Instance with 2 Server Instances & 1 DBMS Instance

    RPS: 1500 clients/sec over 1 minute

    Response Time: 82ms

    Error Rate: 0.1%

Before After
Before Load Balancing afterLoadBalancing
  • Max RPS - Utilizing a Load Balancer Instance with 2 Server Instances & 1 DBMS Instance

    RPS: 2000 clients/sec over 1 minute

    Response Time: 98ms

    Error Rate: 0.1%

Max
Service Diagram

Contributor

Jerome Rodriguez

LinkedIn

GitHub

About

Service to store and retrieve Questions & Answers data

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published