# @bimetal/server-sync 中文文档

规范地址：https://npmcn.com/package/%40bimetal/server-sync/

版本：0\.42\.0
npm 元数据更新时间：2026-10-30T11:44:25.196Z
中文译文更新时间：2026-11-08T02:49:19.205Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40bimetal/server-sync
原文对照：https://npmcn.com/package/%40bimetal/server-sync/?lang=original

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：89.6 kB，11 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：3 个
- 首次发布：2026-06-08T20:25:00.417Z
- 最新版本发布：2026-10-30T11:44:24.999Z
- 近 30 天下载量：15638（2026-10-08 至 2026-11-06，npm 官方下载统计）
- 已发布版本数：19（近 12 个月 19 个）

## 中文简介

@bimetal/ sync 的节点同步服务器骨架 。 WebSocket地层在消费者提供的http上. 服务器,可插接事件 Store 作为权威. 没有HTTP框架;可选的每个连接认证并读取/写入授权钩.

## 安装

```sh
npm install @bimetal/server-sync
```

也可以使用：`pnpm add @bimetal/server-sync`、`yarn add @bimetal/server-sync`、`bun add @bimetal/server-sync`

## README

# @ bimetal/ server- sync

爱因 **节点-同步-服务器-斯凯莱特** 尔时 [`@bimetal/sync`](https://npmcn.com/package/%40bimetal/sync). Es legt eine WebSocket-Schicht über einen (英语) konsumenten- gelieferten 数据 `http.Server` 神经病 `EventStore` (原始内容存档于2018-09-29). als Autorität.

最低限度: **kein HTTP-框架软件.** (原始内容存档于2018-10-12) (英语). Das Paket kümmert sich um das WebSocket-Sync-Protokoll, das (原始内容存档于2018-10-21) (英语). Weiterreichen an die Store-Autirität und——Wenn der Konsument die Haken setzt—— um die Befugnis je Verbindung (双金属-304). (原始内容存档于2013-10-12). Ohne die Haken darf jede Verbindung, dies update überlebt, Jeden Strom lesen und in jeden schreiben; Auth gehört dann in eine HTTP-Middleware vor dem 升级版.

## 安装

```bash
npm install @bimetal/server-sync @bimetal/sync @bimetal/event-sourcing
```

## 戴斯·帕克特的谎言

| 导出 | 兹韦克 |
| --- | --- |
| `createSyncWebSocketServer(options)` | Hängt den Sync-WebSocket-Handler 一个einen Bestehenden (英语:Hängt den sync-WebSocket-Handler) 互联网档案馆的存檔,存档日期2013-12-20 `http.Server` (原始内容存档于2018-10-21) (英语). Und dispendent verbundene 客户端 gegen den als Autorität übergebenen `EventStore` (附录有效 über Optimistic Locking, 广播一个订阅者). |
| `SyncWebSocketServerOptions.undoDomain` | 沙尔特·达斯 撤销 -**科曼多语Name** 弗来( f)`undo`编号 :`redo` 执行 `@bimetal/sync`{\\fn黑体\\fs22\\bord1\\shad0\\3aHBE\\4aH00\\fscx67\\fscy66\\2cHFFFFFF\\3cH808080}我们得去见他 {\\fn黑体\\fs22\\bord1\\shad0\\3aHBE\\4aH00\\fscx67\\fscy66\\2cHFFFFFF\\3cH808080} `expectFrame` 宝石会死 `envelope.id` entität prüfen – 福尔特综合症 – Umkehrung bauen – über `eventStore.append` **安哥拉**. Kein Löschen, Kein Rückspullen; jeder Sublister sieht die Umkehrung als gewöhnliches Live-Event, weil sie den normalen Append-Weg nimmt. 互联网档案馆的存檔,存档日期2013-12-21. 输入状态 `SyncUndoDomain` 执行 `@bimetal/sync` - ein (英语) **端口** (Aggregat + Kommando-Bauer),克能域-进口. 科利迪耶尔特 `expectFrame`缩写 `append-rejected` 闪出格伦德 `concurrency` (原始内容存档于2013-10-12). und der Stream wächst nicht. **欧恩 `undoDomain`** 服务器相接器 _贝南特_ Ablehnung (古伦德语) `unknown`中文本 `undoDomain`),damit ein wartender客户端 nicht in seine Zeitgrenze läuft. 中国植物物种信息数据库. Ob der Server das Kommando trägt, sagt er jedem 客户端 im ersten Framework der Verbindung (英语:`hello`,双金属-292; `@bimetal/sync-ws` 设置zt `undo`编号 :`redo` 努尔贝祖萨吉. |

### Bergrenzter Grösse(双金属-372)中的后续

爱因 `subscribe` (原始内容存档于2013-10-12). wird nicht mehr mit EINEM `events`\- Frame über den ganzen Rückstand beantwortet. - 是的。 - Frame über den ganzen Rückstand beantwortet. 自动死亡 静流静流`EventStore.read(streamId, fromVersion, limit)`; ein 适应器 ohne `limit` 弹簧 korrekt und kostet nur die Vollkopie) und sendet 互联网档案馆的存檔,存档日期2013-12-02 `events`\- 框架之二 `maxFrameBytes` 沃加贝 `DEFAULT_MAX_FRAME_BYTES` = 1 MiB, Gemessen als UTF-8 der Events). Den nächsten 框架 baut sie erst, wenn der (英语) 来点苏克特的酒 Ein einzelnes Event über der Grenze geht als eigener Framework. 中国植物物种信息数据库. 奥德南德 布莱本版本, `caught-up` folgt nach dem letzten Frame. \[永久失效連結\] (中文(简体) ). 死活活活活活活活活活活活 Grössenordnung eines strames über dem gehaltenen stand, start beim Vielfachen des Streams (vorher rund das) 维耶尔法兴河支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支流支道支流支流支流支流支流支流支流支流支流支流支流支流 8-fache des JSON, auf beiden Seiten)),是中国大陆的特产. `@bimetal/sync-ws` (原始内容存档于2018-03-26) (英语). dekodiert jeden Framme beim Eintreffen und wendet ihn je 订阅 der Reihe nach a(双金属-373). 冯贝瓦赫 `__tests__/sync-server.test.ts` (Frames, Ordnung, Seiten) und von (法语) `@bimetal/sync-ws` `__tests__/catch-up-spitze.test.ts` (maxRSS beider Seiten bei跑出90 MB JSON.).

### Befugnis je Verbindung (双金属-304)

| 选项 | 维尔昆 |
| --- | --- |
| `authenticate(req)` | Läuft Beim 升级, bevor ein WebSocket entsteht. 中国植物物种信息数据库. `null`编号 :`undefined` → `401`,基因升级; ein Wurf → `500`杰德·安德尔 错误 `principal` 德勒·凡尔宾敦. |
| `readOnly: true` | 杰德斯·施莱本·维尔德米特 `append-rejected`,格伦德 `auth`,abgewiesen - - (原始内容存档于2019-09-31) `append` ebenso wie die Kommandos (英语) `undo`编号 :`redo`(原始内容存档于2018-10-21). Der Store wird nicht berührt. 框架 trägt bei `auth` **金刚** 版本felder (英语:`expectedVersion`编号 :`actualVersion`: Gemessen wurde keine 版本,eine Zahl wäre erfunden (双金属-323). Dasselbe gilt für Jeden Grund auser 互联网档案馆的存檔,存档日期2013-12-02 `concurrency` (双金属-341). |
| `authorizeAppend(ctx)` | `ctx = { principal, connectionId, streamId, events, expectedVersion }`; Gefragt wird vor dem Store (北齐) `undo`编号 :`redo` (原始内容存档于2018-09-26). mit der gebauten Umkehrung. `false` → `append-rejected`编号 :`auth`, ein Wurf – (英语) `append-rejected`编号 :`unknown`。 。 。 . |
| `authorizeSubscribe(ctx)` | `ctx = { principal, connectionId, streamId, fromVersion }`。 。 。 . `false` • 电子框架 `subscribe-rejected` (欢呼声) `auth`, 贝伊内姆·武尔夫 `unknown`: 基因事件 - Frame,克因快照,克因 `caught-up`斯多克・尼克特家族 (一) 死活; `@bimetal/sync-ws` bendet die 订阅 endgültig (kein 重新连接) und meldet sie über `onRejected`。 。 。 . |

**版本名词 `concurrency` (双金属-341).** `append-rejected` 长相 `expectedVersion`编号 :`actualVersion` nur, wo eine 版本 gemessen ist: beim Konflikt aus dem Store (英语:`ConcurrencyError`(被击倒,被击倒) `expectFrame`\- 爱因斯坦大学 `undo`编号 :`redo` 无 `actualVersion` (德文: Erwartung war eine Frame-Marke,作曲:克能克出道) (德文: Erwartung war eine-Frame-Marke,作曲:克能克出道) 版本). Die Gründe (英语) `auth`, (中文(简体) ), `unknown` (沃尔夫·冯) `authorizeAppend`科曼多·欧恩 `undoDomain`页:1 `validation` (unbekannter Store-Fehler, Werfendes Aggregat) (英语:Kommen ohne Versfelder (filmer)). 克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明·克明克. 解码器在 `@bimetal/sync` (爱尔兰语) {\\fn华文楷体\\fs16\\1cHE0E0E0}弗德·伊恩斯·阿尔特伦服务器 {\\fn华文楷体\\fs16\\1cHE0E0E0}贝·德森·格伦登倒地了.

**Gegenrichtung的有线-Bruch:** Ein Client 之二 0.38 a einem Server ab 0.39 verträgt das nicht. 中国植物物种信息数据库. 盛解码器 长发 `expectedVersion`编号 :`actualVersion` 贝·杰德姆·格伦德·奥塞尔 `auth` als Zahl; 框架子 `validation`编号 : `unknown` 死亡时 `expectFrame`\- 科尔利翁(英语: `expectedVersion`(原始内容存档于2013-10-12). Gelten ihm als Protokolfehler-er schlist 活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活. 客户端 und Server gehören zur selben 版本.

`principal` ưμ㼯a `connectionId` 韦尔宾敦(Verbindung)是恶棍 (原始内容存档于2013-10-12). Wird Sie im Haken des Konsumenten, der Server schreibt kein Protokoll.

Die Gegenseite im 浏览器为 [`@bimetal/sync-ws`](https://npmcn.com/package/%40bimetal/sync-ws) (单位:千美元)`SyncTransport`\- 跳动相机 重接+透明订阅-Wiederherstellung.

## 阿尔基特克图尔

跨部门(Server-Seite von) `sync`) (中文(简体) ). 铁夫: [事件 - 搜索 - 孔泽特](https://npmcn.com/apps/landing/src/content/docs/de/konzept-event-sourcing.md) ưμ㼯a [后端- uberblick](https://npmcn.com/apps/landing/src/content/docs/de/backend-ueberblick.md) ——"Wie groß wird das?",去死Grenze des Log-im-Client.

## 常见问题

### @bimetal/server-sync 是什么？

@bimetal/ sync 的节点同步服务器骨架 。 WebSocket地层在消费者提供的http上\. 服务器,可插接事件 Store 作为权威\. 没有HTTP框架;可选的每个连接认证并读取/写入授权钩\.

### 如何安装 @bimetal/server-sync？

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

### @bimetal/server-sync 支持 TypeScript 吗？

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

### @bimetal/server-sync 支持 ESM 还是 CommonJS？

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

### @bimetal/server-sync 可以商用吗？

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

### @bimetal/server-sync 的下载量有多少？

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

### @bimetal/server-sync 还在维护吗？

最新版本 0\.42\.0 发布于 2026/10/30（9 天前）；至今共发布 19 个版本，其中过去 12 个月发布了 19 个；首次发布于 2026/06/09。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

