Abbiamo lavorato a un progetto di gioco online in rete che verrà eseguito nel prossimo futuro e alla ricerca di una soluzione soddisfacente per il nostro database di giochi distribuiti. Non abbiamo preso i costi di rete in considerazione finora.
Abbiamo i seguenti vincoli:
1) Abbiamo pianificato di utilizzare MySql ma possiamo esaminare le alternative se la soluzione offerta ha un senso.
2) Avevamo programmato di ospitare più server di gioco in diverse regioni geografiche come USA, Europa e Asia.
3) Ogni giocatore di solito si connette al server di gioco più vicino e al nodo di database distribuito per ridurre i costi e i ritardi di rete.
Abbiamo pensato di sviluppare una logica in uno dei nostri livelli lato server che controllerà la posizione dell'utente da cui vuole connettersi. Quindi, replica i dati specifici dell'utente da un nodo di database a un altro se l'operazione di controllo risulta che il giocatore tenta di connettersi da una regione diversa rispetto a prima.
Ci chiediamo che sia il modo corretto per farlo?
Ovviamente dobbiamo pensare ai casi di disastro. A tale scopo, cosa possiamo fare se uno dei nodi del database distribuito fallisce?
Non pensiamo di replicare tutti i dati tra i nodi del database perché causano elevati costi di rete.
Grazie