Skip to content

RequestBin like application with a Go cron-job that cleans up the outdated records.

License

Notifications You must be signed in to change notification settings

asungur/RequestPool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Request Pool

RequestBin like application. Users can create ephemeral bins that collect requests for 48 hours. This repository is developed for deploying to a VPS server.

requestpool

RequestBin like application. Users can create ephemeral bins that collect requests for 48 hours. This repository is developed for deploying to a VPS server.

Development

  • Clone this repository.
  • Create .env folder for DB connection inside server folder.
  • Run npm install from client and server folders.
  • Run npm run dev from server folder.

Deployment (VPS)

  • Clone this repository.
  • Run npm install from client and server folders.
  • Create .env files inside server and db_cleaner.
  • Build(npm run build) client react app and move build folder to server folder.
  • Run the application as a background process using pm2
  • Run the go worker for database clean up as a systemd service.
  • (Optional) Configure firewall to allow connections from a single port only
  • (Optional) Create an Nginx file inside /etc/nginx/sites-available/ with your domain

Future work

  • Add front-end test
  • Configure eslint
  • Experiment with WebSockets

ERD

image

(Bins is a Postgres Table and Requests is a Mongo collection. Relationships in this diagram describe logical relationships only)

Architecture

image

The application is deployed to a DigitalOcean Droplet. It requires additional configuration steps which are described in "Deployment". The diagram shows a deployed application running from a VPS.

About

RequestBin like application with a Go cron-job that cleans up the outdated records.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •