marmot 基于nats 的sqlite 同步方案

marmot 基于nats 的sqlite 同步方案

marmot 基于nats 的sqlite 同步方案

marmot 是一个基于nats 的sqlite 数据同步方案,内部技术上基于了触发器(所以对于表schema 的变更以及如果添加了新的表,处理上就会有一些技巧了)

参考玩法

image

说明

marmot 对于实时处理通过监听wal 文件,然后获取触发器表中的数据,通过nats 的jetstream 发送,每个节点有自己的消息处理,机制上属于最终一致性玩法,实际上还有不少其他sqliet 同步方案(通过wal 读取处理的),对于简单场景marmot 算是一个不错的选择,但是如果表结构会有频繁调整的(就得自己设计表schema 同步方案了)

参考资料

https://github.com/maxpert/marmot

https://maxpert.github.io/marmot/

https://maxpert.github.io/marmot/internals