● THE PROBLEM
What we walked into.
The client had a single-tenant Unreal Engine experience that took 30 seconds to spin up, served exactly one user per GPU, and required custom URLs that leaked instance addresses. A month-long sales pilot crashed the platform on day three when 1,200 prospects arrived at once.
GOALS WE COMMITTED TO
- Multi-instance allocation behind a single, opaque URL per session
- Sub-second time-to-pixel for warm pools, < 6s cold-start
- Tenant isolation: any session reachable only by its rightful holder
- Observability deep enough to debug a frozen frame across five services
● THE SOLUTION
What we shipped.
- 01A Go orchestrator (gRPC) that owns the GPU pool, leases instances per session, and reaps idle workers. Backed by Redis for distributed leases.
- 02Kong gateway in front of every public endpoint, terminating mTLS, validating JWTs and enforcing per-tenant rate limits.
- 03Laravel auth service for SSO, RBAC and session minting; NestJS logging service consuming RabbitMQ topics.
- 04Fluent Bit shipping logs from every UE node to Loki, correlated by trace ID with metrics in Prometheus and traces in Tempo.
Architecture
The full topology, at a glance.
SAMPLE: SESSION ALLOCATION
orchestrator/lease.gogo
// LeaseInstance picks a warm GPU and hands it to a session. // Idempotent on (tenant, sessionID); honors per-tenant quotas. func (o *Orchestrator) LeaseInstance( ctx context.Context, req *LeaseReq, ) (*Lease, error) { span := tracer.Start(ctx, "lease.acquire") defer span.End() if err := o.quota.Check(req.Tenant); err != nil { return nil, errs.QuotaExceeded(err) } inst, err := o.pool.PickWarm(ctx, req.Region) if err != nil { return o.coldBoot(ctx, req) } lease := &Lease{ ID: uuid.NewString(), ExpiresAt: time.Now().Add(req.TTL), } return lease, o.store.Save(ctx, lease) }
Microservices
The services we shipped.
stream-orchestratorGo
GPU pool, leases, evictions
auth-svcLaravel
SSO, RBAC, JWT
session-svcNestJS
session lifecycle, limits
upload-svcLaravel
build ingest, transcoding
log-svcNestJS
RabbitMQ → Loki bridge
billing-svcNode
metered minutes, Stripe

