3 ms·
You're not just talking online games, you're talking enormous-world MMOs, and that's such a far cry from the areas that I have worked with and thought about how
by t-writescode 6y ago
You're not just talking online games, you're talking enormous-world MMOs, and that's such a far cry from the areas that I have worked with and thought about how to work with in any detail that I can't usefully add anything.
If you're trying to manage the concurrent state of 10s of thousands of players in a game, all server-side, and you want specific actors to handle that single player and you don't want a globally persistent state, then I suppose this makes sense.
I've never worked with anything of that scale though.
- alexis2b 6y agoInteresting! Not trying to divert from Akka which is a wonderful piece of engineering, but your comment reminded me of Microsoft’s take at the Actor model with Project Orléans - which was used for the backend side of the Halo / XBox MMO [0]. I think the GA version of Project Orléans is now called Service Fabric, although I never had the pleasure to try it. [0] https://youtu.be/I91ZU8tEJkU https://youtu.be/I91ZU8tEJkU
- reubenbond 6y agoOrleans and Service Fabric are different. Orleans has been running in production for some time now and is actively developed on GitHub: https://github.com/dotnet/orleans https://github.com/dotnet/orleans. Teams inside Microsoft run it on top of Service Fabric (and Kubernetes, etc.) More details in this talk: https://youtu.be/KhgYlvGLv9c https://youtu.be/KhgYlvGLv9c Service Fabric has something called Reliable Actors which are heavily inspired by Orleans. Source: I'm the project lead for Orleans
- valenterry 6y ago> You're not just talking online games, you're talking enormous-world MMOs I am talking about bigger scala here of course. But not necessarily what you describe. Take games like League of Legends or Counterstrike as examples. Having one game per actor seems like a sensible design to me. But yeah, I think that traditional techniques still get you very far. I heard that Slack was running just on (multiple) postgres for the longest time.