Session Name: | Hermes: Extensible REST and RPC Communication for Games Features |
Speaker(s): | Andrew McVeigh |
Company Name(s): | Riot Games |
Track / Format: | Programming |
Overview: | Service communication between game features has always been a critical part of the League of Legends architecture, and this assumed even more importance when we started evolving the platform from a monolithic architecture to a microservice-based one. However, the direction to take in this regard was unclear. The root problem was a diverse combination of game feature requirements, environments and team developer preferences that meant that a "one-size-fits-all" approach was unworkable. This talk presents and discusses our solution, Hermes. It is an extensible (Java-based) communications system that allows each game feature team to customize the facilities to match very closely with their requirements. The talk explains how Hermes is extended, and how each team can customize it for their own feature without compromising interoperability. |