4 ms·
On the note of distributed systems, are there systems that perform well when the a node is not connected? Eg, i'm designing my own "distributed fs" (though my n
by zigsandzags 10y ago
On the note of distributed systems, are there systems that perform well when the a node is not connected? Eg, i'm designing my own "distributed fs" (though my needs are very different), and i'm mainly doing this because i don't see this in many places. Figure it's on topic here.
Eg, i want a single point of contact - my local node (laptop/etc) - which can behave normally whether it is connected to the network, part of the network, or none of the network. The availability of the data at large is obviously dependent on how much of it you're connected to, but that's fine for me.
This gives me the UX of being able to write to the filestore everywhere, rather than losing connection to a self-hosted s3 when i'm out of cell signal range or w/e. Then later, when i'm back and connected to the network, different nodes who are configured to own all portions of data can pull the data as needed.
Are there other distributed offline-able filesystems like this?
- ergl 10y agoThe performance of such a system really depends on what you can expect from it. If your system is distributed without full replication (and no overlap between nodes), then having offline nodes is easy - you just access to your local data, and the rest of the network can't access it. If you want to support full replication, or even partial, you'll want to detect (and maybe resolve) conflicts, and depending on how long you think a node can be offline, you'll need different mechanisms. If you expect nodes to be offline for really long periods of time, then you'll need to keep a lot of state around to be able to detect conflicts later - therefore making it perform worse (bigger latency while replicating data).