Ik wil graag op mijn kamer(tje) en op mijn werk een klein aantal bestanden (ca. 10)beschikbaar hebben (ca 80 mb). Hoewel het niet vaak voor zal komen, is het mogelijk dat er aan allebij de kanten gelezen en geschreven wordt. Meestal wordt het echter niet tegelijktertijd gebruikt, en heb ik graag op beide plekken hoge performance op zowel lezen als schrijven. Bij uitval van bijvoorbeeld stroom of netwerk vind ik data corruption geen groot bezwaar, uiteraard heb ik dat liever niet
. De te delen bestanden zijn onderdeel van een file-based DBMS, een beetje in de stijl van dbaseIII. Dit houdt in dat er ongeveer evenveel gelezen als geschreven wordt, en dat er wijzigingen maar heel klein zijn. (enkele bytes).
De ene kant heeft een chello lijntje (2mbit theoretisch), de andere kant maakt gebruik van een 1mbit geknepen lijn van luna. De gemiddelde afstand tussen de twee machines is ongeveer 13 hops dat doorgaans een vertraging van ongeveer 40 tot 60 ms. Van mijn kamer naar mijn werk heb ik een praktische bandbreedte van 15 kB/s, andersom is dat ongeveer 20 kB/s.
Aan allebei de kanten draait er debian/woody (2.4). Indien nodig heb ik een webserver tot mijn beschikking die ook debian/woody draait (2.2). Die webserver kan 100mbit trekken, maar wordt geknepen op 16 mbit. Alle genoemde systemen hebben een vrijwel permanente uptime.
opties
RSync is efficient met zijn dataoverdracht. Alleen de wijzigingen worden overgestuurd. Een groot nadeel (en voor mij showstopper) is het feit dat simultaan schrijven en lezen niet mogelijk is. Met wat scripting zou een geavanceerd locking systeem te schrijven zijn om conflicten te voorkomen, maar dat gaat in de praktijk waarschijnlijk alleen maar ergernissen opleveren.
NFS (en samba etc) sharen hun bestanden, maar cachen niet echt structureel. Dit betekent dat ik op mijn werk, of op mijn kamer een belabberde performance ga krijgen.
mijn oplossing
Graag zou ik een kruising zien tussen RSync en NFS, dat houdt in: Alle bestanden staan aan allebei de kanten en worden continue gemirrord. Lees performance is hoog, schrijfperformance matig indien aan beide kanten geschreven wordt, anders relatief hoog.
Het grote probleem: Ik weet niet of het bovenstaande systeem bestaat, en hoe het dan zou heten. Heeft iemand een idee?
(ik heb de search wel gebruikt, maar NFS, network filesystem en filesharing zijn te algemene termen in de toch al niet te frisse search)
De ene kant heeft een chello lijntje (2mbit theoretisch), de andere kant maakt gebruik van een 1mbit geknepen lijn van luna. De gemiddelde afstand tussen de twee machines is ongeveer 13 hops dat doorgaans een vertraging van ongeveer 40 tot 60 ms. Van mijn kamer naar mijn werk heb ik een praktische bandbreedte van 15 kB/s, andersom is dat ongeveer 20 kB/s.
Aan allebei de kanten draait er debian/woody (2.4). Indien nodig heb ik een webserver tot mijn beschikking die ook debian/woody draait (2.2). Die webserver kan 100mbit trekken, maar wordt geknepen op 16 mbit. Alle genoemde systemen hebben een vrijwel permanente uptime.
opties
RSync is efficient met zijn dataoverdracht. Alleen de wijzigingen worden overgestuurd. Een groot nadeel (en voor mij showstopper) is het feit dat simultaan schrijven en lezen niet mogelijk is. Met wat scripting zou een geavanceerd locking systeem te schrijven zijn om conflicten te voorkomen, maar dat gaat in de praktijk waarschijnlijk alleen maar ergernissen opleveren.
NFS (en samba etc) sharen hun bestanden, maar cachen niet echt structureel. Dit betekent dat ik op mijn werk, of op mijn kamer een belabberde performance ga krijgen.
mijn oplossing
Graag zou ik een kruising zien tussen RSync en NFS, dat houdt in: Alle bestanden staan aan allebei de kanten en worden continue gemirrord. Lees performance is hoog, schrijfperformance matig indien aan beide kanten geschreven wordt, anders relatief hoog.
Het grote probleem: Ik weet niet of het bovenstaande systeem bestaat, en hoe het dan zou heten. Heeft iemand een idee?
(ik heb de search wel gebruikt, maar NFS, network filesystem en filesharing zijn te algemene termen in de toch al niet te frisse search)
Localhost, sweet localhost