zenoh 存储复制以及校准
zenoh通过存储管理插件可以灵活的支持存储的处理(通过key_expr 配置存储位置,进行分片)同时对于处理的key 会自动进行持久化
但是如果是多个节点的就会存在一致性的问题,zenoh 提供了最总一致性语义可以进行数据的校准
参考配置
- zenoh 1.0.0 之后版本的
"plugins": {
"storage_manager": {
"storages": {
"replication-test": {
"key_expr": "test/replication/*",
"strip_prefix": "test/replication",
"volume": "memory",
// This field was named replica_config.
"replication": {
// This field was named publication_interval.
"interval": 10,
// This field was named delta.
"sub_intervals": 5,
"propagation_delay": 250,
// These fields did not exist before.
"hot": 6,
"warm": 30,
}
}
}
}
}
早期版本
{
plugins: {
storage_manager: {
storages: {
demo: {
key_expr: "demo/memory/**",
volume: "memory",
replica_config: {
publication_interval: 5,
propagation_delay: 200,
delta: 1000,
}
}
}
}
}
}
说明
配置复制校准策略可以实现数据的最终一致性,利用好配置策略可以实现数据访问的可靠性,内部zenoh 实际上包包含了long running 任务进行数据处理,详细的可以通过阅读源码学习
参考资料
plugins/zenoh-plugin-storage-manager/src/replication/service.rs
plugins/zenoh-plugin-storage-manager/src/replication/core.rs
https://zenoh.io/blog/2022-11-29-zenoh-alignment/
https://zenoh.io/blog/2024-10-21-zenoh-firesong/#storage-alignment-protocol
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2023-12-18 maturin 方便发布基于rust 的python 包工具
2023-12-18 electric 基于pg 的现代应用的同步层框架
2023-12-18 cargo-make rust 任务执行以及构建工具
2023-12-18 nakago 轻量级rust 框架
2022-12-18 hydra snowflake 可选的olap postgres 数据库
2021-12-18 k8s集群部署几种方式
2021-12-18 webservice 动态调用使用技巧