Sto considerando CQRS per la creazione di un server di gioco in tempo reale (non il gameplay ma l'economia).
Per alcuni motivi. Ridimensionamento, Registrazione eventi, Cambio modello.
Tuttavia nel gioco in tempo reale durante l'aggiornamento del giocatore, ad esempio il personaggio. Ho deriso il client senza bisogno di alcun feedback del server.
Ma se chiude il gioco immediatamente dopo l'aggiornamento e riapre rapidamente il gioco, DEVE vedere il suo personaggio aggiornato.
Domanda:
-
Mi chiedo quanto tempo il modello in lettura è in ritardo? Quali ragioni ne causano il ritardo? Se ho solo pochi dati del processo di pre-elaborazione per il modello di lettura. Non ho esperienza in scala.
-
CQRS è ancora ok per questo caso d'uso?
-
Se va ancora bene, quali opzioni dovrei scegliere qui?
3.1. Blocca l'utente dalla lettura fino al completamento dell'aggiornamento del modello di lettura.
3.2. Blocca l'utente dalla lettura all'inizio che il comando ha raggiunto il server fino a quando il modello letto non ha completato l'aggiornamento.
3.3. Garanzia leggere il tempo di aggiornamento del modello in modo che sia inferiore al tempo di apertura dell'applicazione. E ignora questi problemi.