A few options:
- Files on disk (potentially slow)
- SQLite on disk (faster, but still slow-ish?)
- SQLite in memory with regular backups to disk (faster, but probably unergonomic?)
- In-memory data structures + regular JSON/MessagePack dumps
SQLite uses rw-locks, which may pose performance issues if they lock the entire database, since we expect both a lot of concurrent reads and writes (60 fps per streaming user).
A few options:
SQLite uses rw-locks, which may pose performance issues if they lock the entire database, since we expect both a lot of concurrent reads and writes (60 fps per streaming user).