@bimetal/sync

中文文档
0.42.0发布于 2026/10/30Apache-2.0TypeScriptES Module近 30 天下载 1.6万

同步原始(v0.15). 框架-不可知同步传输接口+InMemorySync回路. 服务器授权模式,乐观地锁定,没有解析器,没有前作,没有LWW.

中文使用文档
文档目录3 节
  1. 安装
  2. 戴斯·帕克特的谎言
  3. 阿尔基特克图尔

@ 二金属/同步

同步优先 (v0.15) (中文(简体) ). 框架-不可知论 SyncTransport- Interface + eine in-Memory-Loopback-Implementierung - die Grundlage für 互联网档案馆的存檔,存档日期2013-12-02 (原始内容存档于2017-09-22). 多通-Synchronisation über eine Server-Autorität.

Das Model ist Bewust schlank: (原始内容存档于2019-09-29) (英语) Server-Autirität(英语:Autirität), 乐观地锁定(英语:Optimistic Locking), 第一部-Writer-Wins. 基内 解析器,基恩 previous- Feld, kein Last -Write -Wins, keine Timet-Tiebreaker, keine 合并出克恩.. ein Konflikt wird laut (英语:ConcurrencyError(原始内容存档于2013-10-12). nicht still aufgelöst. Fachliche 合并/恢复战略 gehören in die App, nicht ins Framework. (原始内容存档于2019-09-29) (英语).

安装

npm install @bimetal/sync @bimetal/event-sourcing

戴斯·帕克特的谎言

导出兹韦克
SyncTransportDas strukturelle Transport-Interface (senden/empfangen von Sync-Nachrichten) — ein WebSocket-Adapter (英语:@bimetal/sync-ws执行者.
createSyncedEventStore(options)作曲家(基因替换):wickelt einen lokalen EventStore 在einen同步-fähigen Store——lokale Appends gehen über den Transport a die Autorität, 远程事件 weden eingefeldet。 图像 über ein SyncedEventStoreOptions-奥比克.
SyncCatchUpWie aufgeholt wird - (英语) 普夫利希特费尔德 catchUp, ohne 默认 : { kind: 'full' }, (中文(简体) ), { kind: 'since', version } 欧德 { kind: 'snapshot', snapshotStore }磁盘联盟(Diskriminierte Union, damit eine vierte Anbindungsart keine Aufrufstelle bricht),简称"磁盘联盟".
SyncedEventStore.caughtUp(原始内容存档于2017-10-21) (中文(中国大陆) ). Bable für handelnde Konsumenten. 达纳克是克因兹韦特人 hydrate() 无 - 追赶是Gefaltet, Wenn sie settelt; einzige Ausnahme ist { kind: 'snapshot' }, o genau ein (英语) hydrate() (原始内容存档于2013-10-12). den abgelegten Snapshot übernimmt. Ein Catch-up - Frame wird EIN 机车 append (原始内容存档于2018-09-21) (英语). und EINE Benachrichtigung je DomainStore, nicht eine je Event (bimetal-257).
SyncTransport.undo 编号 : .redoDas 撤消科曼多语Name a dead Autorität (英语:undo(streamId, entityId, options?)——"nimm zurück",是"一发一发"(sergendwer geändert hat),"相去不远"(auch vor meinem Seitenaufruf). Ni (原始内容存档于2013-10-12). der lokale Undo-Stapel: der bleibt im Store und geht diesen Weg gar nicht. Die Autorität faltet ihr 综合数据d 随从死亡 乌克洪; nichts wird gelöscht oder zurückgesput. 中国植物物种信息数据库. Der promise settelt mit der Antwort und liefert die Kopf-Version; eine Ablehnung mit Grund 互联网档案馆的存檔,存档日期2013-12-02. 互联网档案馆的存檔,存档日期2013-12-22 concurrency (纽伯霍尔特) expectFrame- 马克)发作的密克本 ConcurrencyError 弃权者 append, mit den Marken im Text —— jede andere (etwa Autorität ohne) (英语) undoDomain,格伦德 unknown) einen schlichten (英语) Error (原始内容存档于2013-10-12). mit dem Ablehnungstext. 贝德·梅德森有罪 选项 ——ein fremder Transport ohne Undo-Weg erfüllt das Interface weiter, Konsumenten prüfen auf Vorhandensein. 中国植物物种信息数据库.
SyncUndoOptions{ expectFrame? } - Framme-Genauigkeit (bimetal-155) über den Draht. (原始内容存档于2012-12-12). 马尔克不死 des AUTORITTS-Standes(美国)envelope.id (一) 将 " Entität im stream " 改为 " Entität " , 单位 死亡 亲子关系 DomainStore.peekUndoFrame()维斯特死后,我们死后将死 Weglassen ist der Normalfall für einen 客户端 ohne 日志.
SyncUndoDomainDer Domänen-Anteil, den eine Autorität für das Kommando bracht: 聚合物+ buildUndoCommand编号 :buildRedoCommand (+ 可选) generateId编号 :now) (中文(简体) ). 爱因 端口, kein 导入- das Paket kennt keine 聚合; die Mechanik (falten, umhüllen, anfügen, ausliefern) bleibt bei der Autorität.
ClientMessage客户端网络联盟( Wire- Union der Client-Nachrichten) : append, (中文(简体) ), subscribe, (中文(简体) ), unsubscribe, (中文(简体) ), ping 苏维埃 undo 编号 : redo (单位:千美元){ requestId, streamId, entityId, expectFrame? }) (中文(简体) ). 死在科曼多岛 append-ok 编号 : append-rejected(原始内容存档于2018-10-21). zugeordnet über requestId。 。 。 .
createInMemorySync() 编号 : createInMemorySyncAuthority()循环-运输 + 记忆- Autorität – für Tests und 单-Prozes-Szenarien. 轻点 undoDomain 卧底死亡 undo编号 :redo。 。 。 .
InMemorySyncAuthority(原始内容存档于2013-10-12). Der Autoritäts-Typ.

阿尔基特克图尔

交叉(运输)。 Konzepte : (韩语) 事件 - 搜索 - 孔泽特 ưμ㼯a 后端- uberblick - " Wie groß wird das? " , " die Grenze des Log-im-Client " (optimistic Locking / Concenter.).

版本与发布记录

@bimetal/sync 共发布 20 个版本,首次发布于 2026/06/08;过去 12 个月发布了 20 个版本。

版本发布日期距今
0.42.0latest2026/10/308 天前
0.41.02026/10/2415 天前
0.40.02026/10/1128 天前
0.39.02026/10/061 个月前
0.38.02026/10/041 个月前
0.37.02026/09/131 个月前

其他发布通道:next → 1.0.0-rc.3。

关于 @bimetal/sync 的常见问题

@bimetal/sync 是什么?

同步原始(v0.15). 框架-不可知同步传输接口+InMemorySync回路. 服务器授权模式,乐观地锁定,没有解析器,没有前作,没有LWW.

如何安装 @bimetal/sync?

在项目目录运行 npm install @bimetal/sync,或使用 pnpm add / yarn add / bun add。

@bimetal/sync 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@bimetal/sync 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@bimetal/sync 可以商用吗?

@bimetal/sync 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@bimetal/sync 的下载量有多少?

根据 npm 官方下载统计,@bimetal/sync 在 2026/10/08 – 2026/11/06 这 30 天内被下载 15,711 次,日均约 524 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@bimetal/sync 还在维护吗?

最新版本 0.42.0 发布于 2026/10/30(8 天前);至今共发布 20 个版本,其中过去 12 个月发布了 20 个;首次发布于 2026/06/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。