Salve a tutti, sto realizzando un progettino per l'università ed essendo nuovo nell'uso di Ruby avrei qualche "piccolo" problemino.![]()
Il progetto consiste nel realizzare una architettura di rete che implementi una memoria distribuita (per semplicità si assume che la memoria memorizza solo interi), dove ogni nodo della rete:
- memorizza localmente una copia della memoria; e altre cose...
...poi: il protocollo deve garantire che tutti i nodi della rete mantengano una visione coerente della memoria.
Per implementare detta architettura si deve:
- Progettare un protocollo di comunicazione che, basandosi sugli algoritmi distribuiti visti a
lezione (tipo Neilsen-Mizuno, Credit recovery e altri), consenta di garantire il corretto funzionamento dell'architettura.
A grandi linee questo è.
Io ho progettato un protocollo e buttato giù un bel pò di roba tipo:
- implementato la classe che definisce la memoria con i metodi per accedervi in lettura e scrittura (tipo monitor) sincronizzando i processi localmente.
- realizzato la sincronizzazione distribuita
- etc
Nel protocollo ci dovranno essere anche dei pacchetti di comunicazione e delle factory che mi ricostruiscano automaticamente i pacchetti a partire da quello che ricevono dalla rete.
Cioè nella mia idea un TCPServer resta in attesa di connessioni e recupera dei dati (pacchetti) dalla rete. A partire dallo stream recuperato usando una PacketFactory ricostruisce i pacchetti e li appende ad una lista di pacchetti in arrivo da cui vari threads incaricati di recuperare pacchetti li prelevano e svolgono le azioni adeguate.
IL PROBLEMA E' QUI:
Non so come trasferire lo stream, o meglio cosa Ruby trasferisce. Quando il server riceve i dati cosa riceve? In Java nella spedizione si metteva tutto dentro un byteBuffer.
Non ho trovato tanto a riguardo e comunque non ho ben chiaro che strumenti utilizzare, quindi se sapete dove posso trovare qualcosa possibilmente in italiano, o se avete qualche consiglio o idea ve ne sarei molto grato.
Non è che mi sono dilungato un pò troppo? Se si perdonatemi![]()

, quindi se sapete dove posso trovare qualcosa possibilmente in italiano, o se avete qualche consiglio o idea ve ne sarei molto grato.
Rispondi quotando