Ho lavorato su a project, che è una combinazione di un server di applicazioni e un database di oggetti, ed è attualmente in esecuzione su una sola macchina. Qualche tempo fa ho letto a paper che descrive un database relazionale distribuito e ho trovato alcune idee su come applicare le idee in quel documento al mio progetto, in modo che potessi realizzare una versione ad alta disponibilità su un cluster usando uno .Come progettare e verificare i sistemi distribuiti?
Il mio problema è che non ho esperienza nella progettazione di sistemi distribuiti e dei loro protocolli. Non ho seguito i corsi avanzati di CS sui sistemi distribuiti all'università. Quindi sono preoccupato di essere in grado di progettare un protocollo, che non causa deadlock, inedia, split brain e altri problemi.
Domanda: Dove posso trovare un buon materiale sulla progettazione di sistemi distribuiti? Quali metodi ci sono per verificare che un protocollo distribuito funzioni correttamente? Raccomandazioni di libri, articoli accademici e altri sono benvenuti.
Questo sembra essere lo stesso libro che usano nella mia università. Amazon ha recensioni divergenti a riguardo, quindi potrei non comprarlo, ma dargli un'occhiata nella biblioteca universitaria. –