How samyam-pradhan/microservices-demo works
Sock Shop is a deprecated, user-facing microservices demo for an online sock shop, built to demonstrate cloud-native technologies. The main user journey enters through the front end; the repository tree identifies catalogue, cart, user, orders, payment and shipping services, plus messaging and persistence components. Deployment manifests establish that these components are intended to run together, but the sampled source does not show their request or message wiring, so those links are omitted. Monitoring, dashboards, logging and tracing are also represented as documented deployment capabilities; observability connections are limited to evidence in the sampled dashboard source.
Main entry points: healthcheck.rb Health checker · 21-grafana-dep.yaml Grafana · 09-front-end-dep.yaml Front end · 06-prometheus-dep.yaml Prometheus
Components 21
Shop services
- Front end
deploy/kubernetes/manifests/09-front-end-dep.yaml - Catalogue
deploy/kubernetes/manifests/05-catalogue-dep.yaml - Carts
deploy/kubernetes/manifests/01-carts-dep.yaml - User
deploy/kubernetes/manifests/25-user-dep.yaml - Orders
deploy/kubernetes/manifests/11-orders-dep.yaml - Payment
deploy/kubernetes/manifests/15-payment-dep.yaml - Shipping
deploy/kubernetes/manifests/23-shipping-dep.yaml
Messaging and state
- Catalogue DB
deploy/kubernetes/manifests/07-catalogue-db-dep.yaml - Cart DB
deploy/kubernetes/manifests/03-carts-db-dep.yaml - Orders DB
deploy/kubernetes/manifests/13-orders-db-dep.yaml - User DB
deploy/kubernetes/manifests/27-user-db-dep.yaml - Session DB
deploy/kubernetes/manifests/21-session-db-dep.yaml - RabbitMQ
deploy/kubernetes/manifests/19-rabbitmq-dep.yaml - Queue master
deploy/kubernetes/manifests/17-queue-master-dep.yaml
Observability
- Prometheus
deploy/kubernetes/manifests-monitoring/06-prometheus-dep.yaml - Grafana
deploy/kubernetes/manifests-monitoring/21-grafana-dep.yaml - Shop dashboards
graphs/sock-shop-performance.dashboard.py - Logging stack
deploy/kubernetes/manifests-logging - Tracing
deploy/kubernetes/manifests-jaeger/jaeger.yaml
Other components
- Shopper
- Health checker
healthcheck/healthcheck.rb
Connections 10
- Shopper → Front end: uses
- Prometheus → Grafana: dashboard datasource
- Grafana → Shop dashboards: renders
- Health checker → Front end: checks health
- Health checker → Catalogue: checks health
- Health checker → Carts: checks health
- Health checker → User: checks health
- Health checker → Orders: checks health
- Health checker → Payment: checks health
- Health checker → Shipping: checks health