{"repo":"JordanMarcelino/learn-go-microservices","free":true,"listed":false,"github":"https://github.com/JordanMarcelino/learn-go-microservices","clone":"git clone https://github.com/JordanMarcelino/learn-go-microservices.git","description":"Learning building microservices application with Go","language":"Go","stars":42,"topics":["backend-api","cluster","gin","golang","kafka","mailhog","microservices","postgresql","rabbitmq","redis"],"license":"MIT","category":"databases-storage","readme_excerpt":"🚀 Go Microservices Simple E-Commerce Platform Welcome to my journey of building a scalable microservices architecture using Golang! This project will implement core microservices patterns with modern technologies. ❓ How to Run 1. Clone the repository 2. Start the Docker Compose 3. Check the services 4. Import the Postman collection 5. Test the APIs 6. Stop the services 🌟 Key Features - Event-Driven Architecture with Kafka & RabbitMQ - Database Master-Slave Replica with PostgreSQL Cluster - Observability with OpenTelemetry & Grafana Stack - Production-Grade Infrastructure Setup 🏗 Architecture Overview 🛠 Service Breakdown 1. 🔐 Auth Service Responsibilities : User identity management and authentication Key Features : - JWT-based authentication - Email verification with 10-minute expiry - Anti-spam protection (1-minute cooldown) - CQRS pattern with master-slave replication - Horizontal scaling with pgpool-II --- 2. 📦 Product Service Responsibilities : Product lifecycle management Key Features : - Real-time inventory synchronization - Event sourcing for product changes - CQRS pattern with master-slave replication --- 3. 🛒 Order Service Responsibilities : Order processing and fulfillment 1. Order Creation with Delayed Messages 2. Payment Reminder Execution Flow 3. Order Expiration Handling 🧠 Key Design Decisions 1. Delayed Message Implementation 2. State Transition Diagram Key Features : - Redis distributed locking for idempotency - Event-driven order processing - Delayed m","default_branch":null,"files":null,"tree":[],"storefront":"/r/JordanMarcelino","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/JordanMarcelino/learn-go-microservices/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}