Otp In Production: The Nitty-Gritty Details Of Game Servers
summary
Production OTP game servers run real-time card tables with four players each, use Cowboy and Ranch for connections and push JSON at the border, and implement a nested finite state machine (Chen/GenFSM style) plus stage callbacks. Rolling deploys happen by flipping the load balancer, starting a table migrator that serializes minimal table state and recreates the table on the new node while a connection proxy forwards raw sockets so reconnecting players continue. PostgreSQL sequence supplies monotonic IDs cached by 50. The system works in production and Bold Poker sells successfully.
AI-written summary · about
chapters (9)
- 0:00Introduction to game servers
- 3:02System architecture
- 6:18Game logic implementation
- 9:53Event tracing
- 12:30Handling disconnections
- 14:31Server migration techniques
- 18:01Seamless state migration
- 20:20Migrating to Elixir
- 23:51Lessons learned and Q&A
related talks
20mUsing OTP in Your Phoenix App
24mRSCs In Production: 1 Year Later
40mBuilding High Performing and Scalable Platforms Using OSS
28mRunning OpenSearch at Scale in High-Traffic Gaming Systems
45mKeeping it Real(time)
30mAbove the Clouds: Investigating Systems from 32,000 ft.
28mSurviving the Grand National
41mIn The Loop
