← All Projects
Web

Ecom Microservices Suite

August 2026
JavaSpring BootSpring CloudSpring Cloud GatewayNetflix EurekaMaven

Overview

One gateway, one registry, one config source — five services that don’t step on each other.

Ecom Microservices Suite is a Spring Boot + Spring Cloud sample that demonstrates how a real e-commerce backend is decomposed into independently deployable services — each with its own responsibility, its own lifecycle, and a shared discovery and configuration layer holding it all together.

Problem

Monolithic e-commerce backends get harder to scale, deploy, and reason about as they grow — a bug fix in payments shouldn’t require redeploying the entire catalog. Teams need a way to split a system into focused services that can be built, deployed, and scaled independently, while still discovering each other and sharing configuration reliably.

What I Built

  • A centralized Config Server (ecom-config-server) that serves shared and service-specific configuration to every other service in the system
  • A Service Registry (ecom-service-resgistry) built on Netflix Eureka, letting services register themselves and discover one another at runtime instead of relying on hardcoded URLs
  • Three independent domain services — user-service, order-service, and payment-service — each exposing its own REST API and registering with Eureka on startup
  • An API Gateway (ecom-gateway-service) built on Spring Cloud Gateway, sitting in front of the domain services to route and filter incoming requests to the right backend
  • A clean startup order and Maven-wrapper-based build for every module, so the whole system spins up locally with just mvnw spring-boot:run per service — no external tooling required

Key Outcomes

  • Modeled the full Spring Cloud microservices pattern end-to-end: config-first startup, service discovery via Eureka, and gateway-based routing — the same architecture backing large-scale distributed systems in production
  • Kept each domain service (user, order, payment) fully independent and individually deployable, with the registry and config server as the only shared dependencies
  • Built with zero external infra requirements for local development — every service runs standalone via the Maven wrapper, making the whole system easy to clone, build, and demo