Skip to content

gs1993/DistributedDataBus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Distributed Data Bus

Architecture

Features

gRPC

Used for synchronous communication between API Gateway and microservices, due to its lightweight nature

Asynchronous messaging - RabbitMq

  1. Easy scalable - multiple consumer instances can be added as needed to handle request pick
  2. Resiliency - if one service fails on an asynchronous system, other services will not be affected. The task will be held until the service is up and running again.

API Gateway

Stateless API Gateway to the system act as single entry point for the clients

Benefits:

  1. Horizontal scalability
  2. Cache
  3. Rate limitting - protection against Denial Of Service (DOS) attacks and degraded performance due to traffic spikes

Setup

  1. Download and install Docker
  2. Go to /docker
  3. Run elasticsearch
elasticsearch-kibana-docker-compose.yaml
  1. Run RabbitMq
docker run -p 15672:15672 -p 5672:5672 masstransit/rabbitmq
  1. Start Gataway and Services
  2. Run project and go to app url: http://localhost:5000/swagger/index.html

About

System for organizing communication between applications

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published