There are two kind of readonly readers, syncing-readonly and nonsyncing-readonly.
Writer publish DB changes: wal-log, manifest...
When a readonly node is up
it need to connect to writer node to acquire a snapshot.
if writer is not online, ...
any way, it needs some mechanism to lock needed files(prevent such files being deleted)
if it is syncing-readonly, it subscribe topics for DB changes
if it is nonsyncing-readonly, it just do read
using ZooKeeper
2018-10-18 10:57: In gluster-env implementation, create a sync-channel for log files: file name pattern is log, we create such a sync-channel, this may be simplify the overall implementation.
There are two kind of readonly readers,
syncing-readonly
andnonsyncing-readonly
.Writer
publish DB changes: wal-log, manifest...syncing-readonly
, it subscribe topics for DB changesnonsyncing-readonly
, it just do read2018-10-18 10:57
: In gluster-env implementation, create a sync-channel for log files: file name pattern is log, we create such a sync-channel, this may be simplify the overall implementation.