Project No. 12

Microservice Project

A disposable three-tier stack (Nginx, service layer, PostgreSQL) with Prometheus, Grafana, and Jaeger wired end-to-end, built to see how a system behaves rather than assume it.

Timeline 6 weeks
Stack Docker, Prometheus, Grafana, Jaeger, PostgreSQL, Nginx
Microservice Project
Challenge

I wanted to understand what a three-tier system looks like from the inside: not just services talking to each other, but the traces, metrics, and logs that tell you why they're slow when they're slow.

Approach

I built a small three-tier stack (Nginx in front, a service layer, PostgreSQL underneath) and wired the full observability triangle: Prometheus for metrics, Grafana for dashboards, Jaeger for distributed traces. Everything comes up with one Docker Compose command so the whole thing is disposable and reproducible.

You can't reason about a system you can't see inside of.
Outcome

A template I now reach for whenever I need to reason about how a system behaves rather than how I assume it does.

  • Metrics, traces, and logs wired end-to-end across three tiers
  • One-command bring-up via Docker Compose
  • Jaeger traces requests through Nginx, service, and database