Skip to content

Event Driven Architecture in Go, Building complex system with asynchronicity and eventual consistency

Notifications You must be signed in to change notification settings

muazwzxv/Micheal-Stack-Book

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 

Repository files navigation

What is this repoooo?

  • This repo is me writing my notes from reading this book by Micheal Stack
  • This repo will also contains the code from my reading and learnings.

What I picked up

  • Event storming (Need one more read)
  • Capturing domain events in our modules
  • Structuring a modular monolith in Go
  • Using gRPC and gRPC Gateway for gRPC API and REST API
  • Understanding types of events
  • Event sourcing to track changes
  • Event sourcing vs event streaming
  • Consistency in event sourcing database
  • Async communciation 101
  • Notification callbacks
  • Using NATS for message broker
  • Idempotency in message brokers
  • Message deduplication
  • Using database transaction for message deduplication
  • Message delivery guarantee
  • Orderded message guarantee
  • Potential problem being competing consumers
  • Event carried state transfer

TODO

  • Implement pub-sub internal library -> Later change to Watermill
  • Implement event sourcing internal libary
  • Implement serializer and deserializer internal library
  • Implement the modular monolith version

NOTE: Will upload my personal notes once I'm done with the book

About

Event Driven Architecture in Go, Building complex system with asynchronicity and eventual consistency

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published