Lab 09: Microservice Hexagonal
Overview
Step 1: Hexagonal Architecture Overview
┌─────────────────────────────┐
HTTP Adapter ──► │ │ ──► Repository Port ──► SQLite Adapter
gRPC Adapter ──► │ Domain / Application │ └── InMemory Adapter
CLI Adapter ──► │ (Pure Go) │ ──► EventPub Port ──► Kafka Adapter
│ │ └── NoOp Adapter
└─────────────────────────────┘
Port = interface (defined in domain)
Adapter = implementation (in infrastructure)
Domain = zero external dependenciesStep 2: Domain Layer
Step 3: Application Service
Step 4: Adapters
Step 5: HTTP Adapter
Step 6: Graceful Shutdown
Step 7: Structured Logging with slog
slogStep 8: Capstone — Runnable Service
Summary
Layer
Responsibility
Dependencies
Last updated
