Why Game Servers Are Reluctant to Adopt Microservices: Technical Perspectives
The article explains that game servers, especially for fast‑paced multiplayer titles, avoid microservice architectures because real‑time latency, stateful in‑memory processing, and high‑performance networking requirements make the added overhead and complexity of microservices unsuitable.
During a recent interview with a large game company, the author asked whether the company planned to adopt microservice architecture. The interviewee was surprised, having never heard of microservices, and the author briefly described their typical benefits such as easier testing, maintenance, scaling, and language independence.
The interviewee argued that game servers prioritize real‑time performance, and microservices would introduce latency; therefore, a modular monolithic approach is sufficient.
Hongjic93's response: In MOBA games like Honor of Kings or League of Legends, many subsystems (account, rune, hero, skin, friends, messaging) could be micro‑service‑ified if traffic is large, but the core gameplay requires ultra‑low latency communication among a small group of players. Adding network overhead, service meshes, gateways, and sidecars would increase latency beyond acceptable limits. Moreover, microservices are typically request/response and stateless, which conflicts with the stateful, streaming nature of game sessions that must maintain long‑lived in‑memory state until the match ends. Moving this state to external stores (e.g., Redis) would further increase round‑trip latency.
Brice's response: For simpler games such as card games, the business logic is not complex enough to justify microservices. Game servers are stateful, keeping player state in memory and only persisting occasionally. Real‑time requirements favor TCP long‑connections over HTTP gateways; protocols like WebSocket or custom TCP (e.g., Netty, Dubbo) are preferred. Service discovery, auto‑scaling, and circuit‑breaker patterns are less relevant because game sessions cannot tolerate request ordering issues or service degradation; failures must be reported directly to users. While some peripheral services (e.g., login, payment) might be micro‑service‑ified, the core game loop remains a tightly coupled, high‑performance, stateful system.
Overall, the consensus is that microservices are not a silver bullet for game server architecture; the high demands on latency, state management, and networking make traditional, tightly integrated server designs more appropriate for real‑time multiplayer games.
Architect
Professional architect sharing high‑quality architecture insights. Topics include high‑availability, high‑performance, high‑stability architectures, big data, machine learning, Java, system and distributed architecture, AI, and practical large‑scale architecture case studies. Open to ideas‑driven architects who enjoy sharing and learning.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.