自荐自己写的 obsidian 笔记多端实时同步的插件 obsidian-better-sync ..

基本实现了 obsidian 笔记的 macos ios win 多端端实时同步( 安卓还没测试..理论上应该是正常使用 ).
欢迎大家踊跃尝试...

地址和详细介绍:

https://github.com/haierkeys/obsidian-better-sync

插件安装 以及 开发状态

目前这个插件正在申请上架 官方三方市场 ( 官方插件审核比较慢 )...

上架申请地址 https://github.com/obsidianmd/obsidian-releases/pull/5851 ( 欢迎围观... )

如果你想马上使用 需要手动下载安装插件...

另外 同步使用的服务端 是 基于 go websocket sqlite3 ..同步效率蛮高的

后续开发功能 会增加 自动同步到 各类 云存储, 比如 s3,sso,minio,webdav 等...

因为插件在审核期间.. 所以原则上 在审核期间不增加任何新功能...只做一些优化操作..

等上架后才会把更多好玩的点子全部都招呼上..

关于服务端注意事项

目前 服务端 obsidian-better-sync-service 项目 webgui相关还有一些小问题..
因为 webgui 项目 是从 obsidian-image-api-gateway 复制过来的..
所以除了登录注册和复制配置 之外其他功能为无效界面.. 请忽视...
除了webgui 之外的服务已经没什么太大问题了..
( 个人时间有限, 又要obs前端 又要后端..还有后端webgui 所以请大家包容哈,, 后续上架之后的几个版本会吧这些问题全部解决掉 )

不过由于webgui 排版的问题..近期准备调整 webgui 的版面重构..

部署方案案例

目前我在用的部署方案是 用一个 claw JP 小鸡 挂了的docker版服务端...

整体使用基本无感知无打扰...

写这个插件的心路历程以及缘由:

我之前是使用 remotely sync s3 ( CF R2 ) ...

每次写完笔记都会 都会在 同步笔记 那个过程 产生严重的焦虑 外加 增加 等待同步成功的时间成本

(分析原因是 remotely sync 的执行效率以及 s3 服务的访问速度 叠加产生的 )

所以索性就自己写一个同步整套方案,来解决这个obs一直让人不淡定的痛点....

和Self-hosted LiveSync区别

在回复其他平台一个童鞋提问..我用AI整理了下段落,方便大家理解区别 我COPY过来

Self-hosted LiveSync 实现原理

  • 依赖 CouchDB 的 HTTP API
  • 只是开发了客户端,而非完整的 C/S 方案
  • 实时更新基于轮询或阻塞长查询实现
  • 可能导致手机端网络和电量快速消耗
  • 强依赖 CouchDB,难以实现各类扩展和联动功能
  • 设置复杂,有超长的注意事项和多个步骤,对小白用户不友好

Obsidian-Better-Sync 特点

  • 客户端和服务端完全独立实现
  • 服务端基于 Golang Websocket Sqlite 构建
  • 采用 Websocket 协议实现真正的多端实时同步
    • 大多数直播平台也采用此协议
    • 基于 TCP 的心跳机制,手机端比 HTTP 协议消耗更少
  • Go 程序并发处理性能高,同步速度快,用户基本无感知

扩展性与灵活性

  • 服务端独立实现,可增加多种功能(如备份到云存储或 WebDAV)
  • 数据库可灵活替换,支持 Sqlite(默认)或 MySQL
  • 采用 Sqlite 是为简化用户部署,无需额外搭建数据库环境

易用性

  • 设置超级方便:服务端架设好后,只需在插件端粘贴配置即可完成
  • 相比 Self-hosted LiveSync 的复杂设置更加用户友好

安全性

  • 基于 SSL 的 WSS 协议加密已足够安全
  • 作者认为额外的端到端加密可能是多余的

注:作者表示会注意功能边界,避免与官方同步功能过度竞争导致插件被下架

点赞
  1. EpiphyllumW说道:

    插眼

  2. flyblack说道:

    收藏

  3. Ansgwrt说道:

    支持

发表回复

电子邮件地址不会被公开。必填项已用 * 标注

×
订阅图标按钮