Open brandon-otoole opened 1 year ago
The major components needed for durability of data:
Components needed for scalability:
Given that durability and scalability are different concerns. I will first focus on durability of data by deploying reddis as a container. This works well with the current deployment strategy using docker compose.
The room data and drawing histories are all stored in memory within the backend. Server crashes, restarts will clear all history.
For realtime speed, something like redis should be used. To enable horizontal scalability, a message queue like redis pub/sub, or other needs to be implemented between nodes For durability, either Redis backup, or a typical database should be used