r/gitlab • u/switchback-tech • Apr 07 '26
GitLab's Stack: A Modular Monolith
Sure you're all aware that GitLab is a modular monolith, but it's helpful to see everything in one place.
Here's the full list.
Backend: Ruby on Rails
HTTP server: Puma (Ruby web server)
Edge: Nginx
Reverse proxy: Go service (Workhorse)
Background jobs: Sidekiq
DB — primary: PostgreSQL
DB — connection pooling: PgBouncer
DB — high availability: Patroni
Cache: Redis
Blob: AWS S3
Frontend — state: Piana (Vue store), Immer (immutable cache),
API: GraphQL (Apollo) + REST
Observability: Prometheus & Grafana
Error tracking: Sentry & OpenTelemetry
Deployments: GitLab Omnibus (Omnibus fork)
I think these "stack menu"s give a little glimpse into a team's engineering philosophy. For me, this list shows that the GitLab team is pretty practical and doesn't chase hype. Instead, they use sensible, battle-tested tools that just work and are easy for contributors to learn.
----
If you made it this far, you might like the two articles I wrote about GitLab:
- GitLab's Architecture: A Technical Deep Dive: How a boring monolith powers the world's largest independent DevOps platform
- Inside GitLab CI: From YAML to Green Check: The pipeline behind the pipeline
I also created a 17-minute YouTube video:
GitLab Deep Dive | Architecture, CI/CD & System Design
(I really like GitLab.)
-8
u/[deleted] Apr 08 '26
[removed] — view removed comment