About This Architecture
Cinemayan demonstrates a production-grade microservices architecture combining Spring Boot API Gateway, Eureka service discovery, and Kafka event streaming with clean architecture principles enforced across bounded contexts. Clients route through the API Gateway to the Catalog Service, which registers with Eureka, persists to MySQL via Liquibase migrations, and publishes events to Kafka for asynchronous communication. The Catalog Service implements layered clean architecture—Infrastructure, Application, and Domain layers—with ArchUnit rules enforcing domain isolation and preventing cross-layer violations. Observability is built-in via Grafana dashboards, Loki log aggregation, and Tempo distributed tracing, enabling teams to monitor service health and debug issues across the distributed system. Fork this diagram to customize service names, add additional bounded contexts, or adapt the observability stack to your monitoring platform. The inset clean architecture diagram serves as a template for implementing new microservices while maintaining consistent layering and domain-driven design principles.