Real-time multiplayer & game servers.
2 topics
Real-time multiplayer networking: UDP for speed (unreliable but fast), TCP for reliability (chat, inventory). Client-server vs peer-to-peer architectures. Concepts: tick rate, network interpolation, client-side prediction, server reconciliation, lag compensation, and delta compression. Netcode determines game feel.
2 resources
Authoritative servers prevent cheating — server is the source of truth. Game loops running at fixed tick rates (20-128 Hz). State management: entity-component systems on server. Scaling: sharding game worlds, instancing, and zone-based architectures. Languages: C++, Go, Rust, or C# for performance.
Matchmaking: skill-based (ELO/Glicko ratings), latency-based (geographic proximity), queue management, and party systems. Session management: lobby creation, game state persistence, reconnection handling. Backend services: player profiles, leaderboards, achievements, analytics, and anti-cheat systems.
Game servers need low latency — deploy close to players (edge computing). Container orchestration with Agones (Kubernetes for game servers). Auto-scaling based on player demand. DDoS protection for game servers. Database choices: Redis for real-time state, PostgreSQL for persistent data. Monitoring: player counts, tick performance, network quality.