Skip to content

abhishekkaria/social-media-microservice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Hi, I'm Abhishek Karia! 👋

I'm a full stack developer and Microservice enthusiast

Microservices Patterns with Node.js

This Project covers Database Per Service Pattern, Messaging Pattern for communication (RabbitMQ). Aggregator Patters for cross db join.

Tech Stack

Server: Node.js, Express

Database: MongoDB

Queue: RabbitMQ

Documentation: Thunder client

Installation

Clone the project

  git clone https://github.com/abhishekkaria/social-media-microservice

Go to the project directory

  cd social-media-microservice

Install dependencies

  cd aggregator-service  # Navigate to aggregator-service folder
  npm install

  cd ../comment-service  # Navigate to comment-service folder
  npm install

  cd ../user-service  # Navigate to user-service folder
  npm install

  cd ../post-service  # Navigate to post-service folder
  npm install

Environment Variables

Port, RabbitMQ, MongoDB and other details can be confired in index.js file of relevant service.

Note: carefully configure User service, Post service and Post service URLs in Aggregator service.

Running the Services

In each service folder (aggregator-service/, comment-service/, user-service/, post-service/), run the following command to install dependencies:

cd aggregator-service  # Navigate to aggregator-service folder
npm start

cd ../comment-service  # Navigate to comment-service folder
npm start

cd ../user-service  # Navigate to user-service folder
npm start

cd ../post-service  # Navigate to post-service folder
npm start

Documentation

For API Doc we used Thunder Client VSCode Plugin. every service has api doc filder which has API Doc file . which can be imported in VSCode.

🔗 Links

portfolio linkedin