Infrastructure¶
This section documents the runtime infrastructure that the backend service depends on. These are the cross-cutting components that every domain service shares — the wire-protocol clients, the persistent stores, the background execution engine, and the dependency-injection harness that ties them together.
- Database — Postgres + PostGIS + sqlc/pgx, connection pool, migrations, timezone handling
- Redis — cache, rate limiting, presence, event geo index, queue + pub/sub backend
- Object Storage — S3 / MinIO driver + the
assetsservice, presigned uploads, cascade delete - WebSocket Hubs — the session + client hubs, cross-pod fanout, ping/pong
- Async — Asynq queues + cron with cross-replica dedup
- Wiring (DI) — Google Wire provider sets, per-domain WireSets, codegen
- Email — transactional email via external API
Every page below is grounded in code paths under backend/internal/ and is the source of truth for how the corresponding subsystem is configured, extended, and operated.