Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fast game state management #38

Open
8 tasks
oubiwann opened this issue Oct 4, 2020 · 0 comments
Open
8 tasks

Fast game state management #38

oubiwann opened this issue Oct 4, 2020 · 0 comments
Labels
Milestone

Comments

@oubiwann
Copy link
Member

oubiwann commented Oct 4, 2020

Scenario: many players are logged onto the game, interacting with each other, with NPCs, with the world, and making changes that impact all of the above and thus the overall game state.

Tasks:

  • First of all, is PostgreSQL not fast enough? Test it!
  • If the answer to that is "yes" then delete the hxgm30.world release app (will just use hxgm30.store instead)
  • Can all of the game state reside in memory?
  • What efficient data structures might be applied here? (e.g., RoaringBitmap?) What are the concurrency stories around those?
  • Is the best answer to simply use Redis?
  • If an in-memory state manager is needed, state changes will need to be pushed to the store eventually
    • we've been exploring WAL updates as an event stream (see Add support for streaming event data for DB changes #39) which push DB messages to the app -- we'll need to explore app messaging pushed into the DB for queued DB updates ...
    • would be nice to do this in-app, in-node and not have to add a full messaging system to the stack ...

(Additional tasks to be defined once the above questions are answered.)

@oubiwann oubiwann added the epic label Oct 4, 2020
@oubiwann oubiwann added this to the v0.5.0 milestone Oct 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant