Skip to content

a-aslani/golang_monolith_event_driven_architecture

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Event-Driven Architecture in Golang

Event-driven architecture

Event-driven architecture (EDA) is a software architecture paradigm promoting the production, detection, consumption of, and reaction to events.

Full list what has been used:

EventStoreDB The database built for Event Sourcing
gRPC Go implementation of gRPC
PostgreSQL Application Database
gRPC-Gateway gRPC to JSON proxy generator following the gRPC HTTP spec
chi A lightweight, idiomatic and composable router for building Go HTTP services
NATS JetStream Connective Technology for Adaptive Edge & Distributed Systems
migrate Database migrations

Build and run with Docker compose

  1. make up
  2. make db
  3. make migrate

Software and Hardware List

Software required OS required
Go 1.18+ Windows, Mac OS X, and Linux (Any)
Docker 20.10.x Windows, Mac OS X, and Linux (Any)
EventStoreDB 22.10.x Windows, Mac OS X, and Linux (Any)
NATS 2.9 Windows, Mac OS X, and Linux (Any)

Swagger UI:

http://localhost:8080

EventStoreDB UI:

http://localhost:2113

About

Golang Monolith Event-Driven Architecture

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages